Docker安裝
#yum install docker-engine (centos 6.5)
或者#curl -fsSL https://get.docker.com/ | sh
如果是出現“Warning: the "docker" command appears to already exist on this system.”就意味你曾經裝過docker但是失敗了,這個時候需要#yum list installed | grep docker,然後把出現的那個東西yum -y remove掉。
檢查docker是否安裝成功就是#docker version
<a href="http://s2.51cto.com/wyfs02/M01/86/AA/wKiom1fGxOfB-yI_AADDgXZg1Ss676.png" target="_blank"></a>
後面出現了一個錯誤,Are you trying to connect to a TLS-enabled daemon without TLS?
這意味着docker失敗,在ps-ef下也看到docker沒有程序啟動。那麼我們需要先啟動一下docker,#service docker start,這個時候再看,出現的是“Cannot connect to the Docker daemon. Is 'docker -d' running on this host?”這個錯誤,這個時候我們繼續#docker -d,看到這次的提示是:
<a href="http://s4.51cto.com/wyfs02/M01/86/AA/wKiom1fG1c7wZR21AABOSwLfOhk738.png" target="_blank"></a>
這次的提示就是這台機器的核心等級太low,需要更新核心。我這台機器是阿裡雲的機器,如果docker在核心2.6的情況下使用是很容易坑的,推薦更新到3甚至是4,于是我就可以不用幹活了!OH yeah!!!
然後并沒有什麼卵用,萬惡而且殘忍的主管拿來了一台centos 7,于是我又要繼續搞docker。
不過話說回來,docker的前景很牛逼,很多好企業對docker人才很饑渴,是以還得好好學習。
這次在centos7上安裝好了docker,使用#docker version一看,如圖:
<a href="http://s3.51cto.com/wyfs02/M00/86/AE/wKioL1fHmIXznQKGAAB_9aRUDvI963.png" target="_blank"></a>
既然下載下傳成功了,我們就可以搜尋一下目前都有什麼容器,假如我們要搜尋QQ,那就如下圖:
<a href="http://s4.51cto.com/wyfs02/M00/86/AE/wKioL1fHmXHz3DtcAAGILOAeLbE469.png" target="_blank"></a>
以後我們自己寫的東西也會出現在這裡,供人參觀以及下載下傳,那現在就來下載下傳一個吧:
<a href="http://s4.51cto.com/wyfs02/M00/86/AE/wKioL1fHmkyxFZkfAAC7fYIax0s109.png" target="_blank"></a>
我上面就是search了一個messi關鍵字,然後使用#docker pull + 完整的名字,把這個包下載下傳下來。
但是不要誤會,這個下載下傳不是說下載下傳到本地,如果你用find指令是找不到這個docker.io/hibooboo2/messing-with-docker容器的。注意這個messing唧唧哇哇什麼的就是我們常說的容器。那麼這個唧唧娃娃去哪裡了呢?我們要用#docker images來檢視,我們以後自己寫的docker也會在images裡,如圖:
<a href="http://s3.51cto.com/wyfs02/M02/86/AE/wKioL1fHoKuiEs2YAAAuQWLU_r0905.png" target="_blank"></a>
現在我要對這個家夥做一個更改,比如我要在messing-with-docker這個東西裡面安裝一個ping工具,那就#docker run docker.io/hibooboo2/messing-with-docker yum install -y ping,結果如圖:
<a href="http://s5.51cto.com/wyfs02/M02/86/AE/wKiom1fHnD-B3KS7AAAoGori0qA519.png" target="_blank"></a>
呃...這個很有可能是因為這個docker是用ubantu寫的,不能用yum而是用apt-get,于是更換指令:#docker run docker.io/hibooboo2/messing-with-docker apt-get install -y ping,看看效果:
<a href="http://s4.51cto.com/wyfs02/M00/86/AE/wKioL1fHnKKC-aJEAABDQTAHOsA948.png" target="_blank"></a>
看樣子有人先下手為強了,那麼如果要是想儲存這個容器的怎麼辦?
分為兩步,第一步擷取這個容器的id号,使用指令是#docker ps -l:
<a href="http://s1.51cto.com/wyfs02/M01/86/AE/wKioL1fHnqCg6nXFAABC_UZjaL0772.png" target="_blank"></a>
紅色那部分就是id号,第二步就是按照docker儲存的格式進行儲存,格式是“docker commit id号 容器完整名”,對于上面那個例子,就是#docker commit 60366 messing-with-docker,id号在這裡是不用寫完整的,寫前四個或者前三個數字就可以了。執行完這個指令之後,就會傳回一個新的id号。
本文轉自 蘇幕遮618 51CTO部落格,原文連結:http://blog.51cto.com/chenx1242/1844932