安裝 Docker 環境
開始學 Docker 前,需要先把環境建好。以下提供多種安裝方法,讀者可以依自己喜好自由選擇。
原生系統上安裝
若沒有特殊需求或限制,會建議使用這個方法。以下針對三個主流作業系統做簡單的說明:
Linux
注意:必須要是 64-bit 版本才能運行 Docker。
參考官方文件,或使用懶人包安裝:
sudo curl -fsSL https://get.docker.com/ | sh |
已使用 Vagrant 測試過 ubuntu/trusty64
與 debian/jessie64
兩個作業系統可行;centos/7
需手動啟動 docker daemon sudo systemctl start docker
。
Mac
參考官方文件,下載並安裝 Docker Desktop for Mac(需要權限)。
或是使用 Homebrew 的 Cask 安裝(需要權限):
brew cask install docker |
Windows 10
注意:需啟用 Hyper-V。
參考官方文件,下載並安裝 Docker Desktop for Windows。
使用虛擬機安裝
有時候因為某些理由,可能會不想或無法(如 Windows 7)在原生系統上安裝 Docker,這時可以考慮使用虛擬機安裝。
Docker Machine
Docker Machine 是官方提供 Docker 機器的建置工具。如果打算建置虛擬機的話,這應該是最適當的方案。
預設的 provider 包括以下選擇:
- VirtualBox
- Hyper-V(Windows only)
- 還有很多 provider,可以參考官方文件
使用雲端服務請注意防火牆要開通 local 機器的連線,Docker 使用 tcp 2376 port 連線,同時不要讓其他人能連到這個 port。
以 VirtualBox 為例,執行以下指令即可建立一個 Docker 虛擬機器:
# 建立 Docker 虛擬機 |
Vagrant
Vagrant 使用指令管理虛擬機,並使用程式碼來表達環境(Infrastructure-as-code,IaC)。
實際的做法,建立 Vagrantfile
檔案,並將下面的程式放入檔案裡:
Vagrant.configure("2") do |config| |
再來使用 vagrant up
指令即可得到 Ubuntu trusty 64-bit + Docker CE 的乾淨環境:
vagrant up |
AWS Cloud9
使用 AWS Cloud9 服務:
- 啟用 Cloud9 服務,設定直接用預設值即可
- 在 Cloud9 服務,下
curl ifconfig.co
指令取得公開 IP - 如果想要從 local 連上並測試服務的話,必須到 EC2 服務裡,找到對應的 instance,再設定 security group
Play with Docker
上述方法全部都不行的話,這就是最後一招了:申請好 DockerHub 的帳號後,即可使用 Play with Docker 服務。
它是使用 DinD 做成的線上服務,所以會有兩個很明顯的問題:
- 不保證系統一直都可以用,所以有時會壞掉。
- 因為使用 DinD,所以從本機是無法連上該服務建置出來的服務,不過可以在服務上使用
curl
或其他跟連線有關的指令測試
驗證
安裝完成後,打開終端機輸入下面指令,即可驗證是否安裝成功:
docker run hello-world
若沒出現錯誤訊息,且有出現 Hello from Docker!
文字的話,代表 Docker 有正常啟動,可以開始使用 Docker 了!
今日自我回顧
- 描述自己選擇的安裝方法,以及為何選擇這個方法。
- 建立 Docker 環境,並可正常執行指令
docker run hello-world
。