docker是啥就不多講了,簡言之就是更輕量、更牛叉的新一代虛拟機技術。下面是安裝步驟:
一、mac/windows平台的安裝
docker是在linux核心基礎上發展而來的,無法直接運作在mac/windows上,需要借助docker-machine工具,先在mac/windows上建一個linux的虛拟機,然後才能繼續玩下去。預設内置的虛拟機引擎是Oracle的免費軟體VirtualBox,可支援vmware fusion之類的商業軟體。
1.1 下載下傳docker toolbox
安裝過程很簡單,一路Next就可以了,唯一要注意的是最後一個界面:

docker toolbox提供了二種運作方式,終端指令行及圖形界面,建議初學者選擇圖形界面,以降低學習難度。
進入後,會要求先建立一個docker hub的賬号,新增賬號完成郵箱驗證後,就能進入了,docker hub上提供了大量的docker鏡像檔案(可以了解各種虛拟機的模闆,不過建議翻~*牆,否則速度奇慢,甚至打不開),基本上可以滿足各種要求,比如:需要一個持續內建的虛拟機,可以直接使用jenkins鏡像,需要一個mysql,可以直接使用mysql鏡像...
上面的腳本并沒有删除virtualbox,如果連virtualbox也要解除安裝,自行到Application面闆裡,把virtualbox拖到垃圾箱裡即可。
1.2 下載下傳鏡像
先選一個小點兒的鏡像感受下,比如:用kitematic/hello-world-nginx測試下nginx
1.3 一些正常操作
下圖是KI的GUI界面,打紅圈的地方可以直接操作,工具欄裡的Start點選一下,把nginx容器運作起來
點選上圖中"浏覽nginx首頁"的按鈕,就可以直接在浏覽器裡看到nginx首頁了,很友善吧!工具欄裡的STOP/RESTART這些按鈕看名字就知道用途了,不再啰嗦。
可以有同學注意到了,浏覽器裡的位址類似:http://192.168.99.100:32774,如果想知道為啥是這個IP及端口,可以看下Ports頁,如下圖:
上圖的意思是,将docker容器中的80端口,映射到虛拟機的32774端口,那麼問題來了,192.168.99.100又是哪裡來的?
點選左下角的DOCKER CLI,就能進入docker終端,然後運作:
會顯示出目前建立的虛拟機(還記得本文最開頭說的,mac上不能直接運作docker,必須先建立一個linux虛拟機吧),輸出的default就是虛拟機的名字,然後再運作:
就能看到virtual box給虛拟機default配置設定的IP. 繼續,點選下圖中的Exec,将進入nginx docker容器的bash指令行模式:
輸入nginx -V檢視配置檔案的位置:
可以看出配置檔案為/etc/nginx/nginx.conf,用cat指令檢視一下:
從上圖看,網站的根目錄為/website_files,回到KI中,點選Volumns标簽
可以看到實際是上把mac本機的~/Documents/Kitematic/hello-world-nginx/website_files 映射到docker容器執行個體中的/website_files,大家可以嘗試把mac本機~/Documents/Kitematic/hello-world-nginx/website_files 中的index.html修改下,再重新整理下浏覽器中nginx頁面,應該馬上就能看到效果了。
1.4 docker 指令行的秘密
如果直接在mac本機打開一個終端,然後輸入docker ps之類的指令,會提示
但是從KI界面點選DOCKER CLI進入終端後,再輸入docker ps,能正常顯示正在運作的容器資訊:
原因在于:通過KI進入終端後,會先執行
大家在docker CLI終端裡,按一下向上的箭頭就能發現這個秘密了,把這一行長長的指令換行整理一下,
并沒有什麼特别之處,就是定義了幾個bash變量而已,上面這一段不用死記,可以簡化成:
第二行執行完以後,會輸出:
注意最後一行,按提示複制 eval $(docker-machine env default),然後執行一下,bash終端就有docker的上下文環境,然後執行docker ps之類的,就不會報錯了。
類似的,點選頂部工具欄上的EXEC,實際上等效于
換行整理一下:
隻是多了最後一行,是以上面這一段相當于:
二、linux平台的安裝(以centos為例)
注意:centos要求7以上版本,低版本的核心docker不支援。
3行代碼就搞定了,其中第1行,是從國内daocloud公司下載下傳的,如果你想從官網下載下傳,可以改成 sudo yum install docker 或 curl -sSL https://get.docker.com/ | sh, 安裝完成後,執行:
檢視docker deamon狀态,如果有active(running)字樣輸出,表示docker運作正常.
參考文章:
<a href="https://docs.docker.com/engine/installation/centos/" target="_blank">https://docs.docker.com/engine/installation/centos/</a>