更新時間:2020-10-13 來源:黑馬程序員 瀏覽量:
在Linux系統上安裝Docker有3種方式,分別為在線安裝、離線安裝以及腳本文件安裝,其中最常用也是官方推薦的安裝方式就是在線安裝。接下來將在 Ubuntu16.04系統上分別針對這3種安裝方式進行詳細講解。
由于在線安裝方式比較容易,且后期升級維護相對方便,所以對于大多數開發者而言,通常會選擇在線安裝 Docker。這種安裝方式需要先設置一個 Docker 倉庫,然后通過該倉庫進行安裝和后續更新。
1.設置Docker倉庫
在新的主機上初次安裝Docker CE之前,必須先設置Docker存儲庫,其步驟如下。
(1)更新apt的索引包。
$ sudo apt-get update
需要注意的是,在執行 apt 更新完成后,終端可能會返回如“Problem executing scripts APT::Update::Post-Invoke-Success 'if /usr/bin/test -w /var/cache/app-info -a -e /usr/bin/appstreamcli; then appstreamcli refresh > /dev/null; fi'”的子流程錯誤信息,這個錯誤是在Ubuntu16.04系統下更新apt時內部出現的問題,并不影響后續Docker的安裝和使用,所以這個問題可以直接忽略。
(2)安裝軟件包允許apt通過HTTPS方式使用Docker倉庫。
$ sudo apt-get install \ apt-transport-https \ ca-certificates \ curl \ software-properties-common
(3)添加Docker官網的GPG key。
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add
(4)添加Docker穩定的倉庫源(根據Ubuntu鏡像版本的不同進行選擇安裝)。
amd64:
$ sudo add-apt-repository \ "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) \ stable"
armhf:
$ sudo add-apt-repository \ "deb [arch=armhf] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) \ stable"
s390x:
$ sudo add-apt-repository \ "deb [arch=s390x] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) \ stable"
2.安裝Docker CE
設置好Docker倉庫之后,就可以從存儲庫中安裝和更新Docker,其實現步驟如下。
(1)更新apt的索引包。
$ sudo apt-get update
(2)安裝不同版本的 Docker。在安裝 Docker 時,通常會根據個人情況選擇安裝不同的版本。為此,Docker提供了兩種安裝方式,一是安裝默認的最新版本的Docker,二是安裝指定版本的Docker,具體如下。
·安裝最新版本的Docker,具體指令如下。
$ sudo apt-get install docker-ce
需要注意的是,執行上述指令后,之前存在的任何版本的Docker都會被替換。
·安裝指定版本的Docker,具體指令如下。
$ sudo apt-get install docker-ce=
從上述指令可以看出,安裝指定版本的 Docker 時,需要通過“=”將版本字符串附加到安裝包后。
為了更好地選擇指定版本的Docker,可以使用apt-cache madison指令查看Docker倉庫中的Docker版本信息,具體指令如下。
$ apt-cache madison docker-ce
執行上述指令后,就會顯示出當前Docker倉庫提供的在線的Docker的版本信息,具體效果下圖所示。
圖中列表中的內容依賴于啟用的存儲庫,其中第二列是版本字符串,第三列是存儲庫名稱,用于指示安裝包來自哪個存儲庫。
(3)安裝完成后,可以使用sudo docker run hello-world指令運行測試,具體指令如下。
$ sudo docker run hello-world
在沒有網絡或者網絡條件較差的情況下,我們可以選擇離線安裝Docker(使用DEB格式的安裝文件)。這種安裝方式的好處是不依賴于網絡,但其缺點是后期使用時需要手動升級和維護,并且每次升級時都需要下載一個新的.deb文件。
1.下載離線安裝文件
通過官方提供的地址 https://download.docker.com/linux/ubuntu/dists/,下載安裝 Docker的.deb文件,訪問該地址后的效果如下圖所示。
Docker的離線安裝文件地址
上圖中,需要選擇自己機器所對應的Ubuntu版本。由于本書使用的是Ubuntu Xenial 16.04 (LTS)版本,所以要單擊圖中的 xenial 鏈接并進入到 pool/stable/目錄下,然后根據情況選擇amd64、armhf或者s390x版本的.deb文件,如下圖所示。
Docker的離線安裝文件下載目錄
2.使用離線文件安裝Docker
通過下載的.deb文件進行Docker離線安裝非常簡單,只需要在Ubuntu系統的終端中執行如下指令。
$ sudo dpkg -i /path/to/package.deb
需要注意的是,使用sudo dpkg –i指令安裝Docker時,一定要指定讀者下載的.deb文件所在地址,例如上面指令表示執行/path/to/路徑下的package.deb文件。
在開發和測試環境下,我們還可以使用Docker官方提供的自動化腳本文件來安裝Docker,其中開發環境和測試環境下的腳本文件下載地址分別為 https://get.docker.com/和https://test.docker.com/。
需要注意的是,這種安裝方式是針對某些特定環境提供的,雖然使用此種方式可以快速地在非交互式的開發環境中安裝穩定開發版本和測試版本的Docker CE,但是在實際環境下不推薦使用腳本文件來安裝 Docker,所以這里對于腳本文件的 Docker 安裝就不做具體介紹了,有興趣的讀者可以查看官網介紹,具體參考地址為 https://docs.docker.com/engine/installation/linux/docker-ce/ubuntu/#install-using-the-convenience-script。
多學一招:Docker的開機啟動和添加當前用戶可執行權限
在Docker安裝完成后,開發者可以根據實際需求進行其他一些相關設置,例如Docker開機啟動、當前用戶可執行Docker等,具體設置方式如下。
(1)配置Docker開機啟動
$ sudo systemctl enable docker
(2)配置當前用戶執行Docker權限(username是自己的用戶名)
$ sudo usermod -aG docker username
完成上述配置后,需要重啟Ubuntu系統來查看效果。
四、Docker安裝時的問題及解決方法
通常情況下,嚴格按照前面幾個小節的安裝要求和方式進行Docker的安裝,基本就可以正常完成Docker的安裝,但在某些特殊情況下,安裝過程可能會出現一些問題或者錯誤,本小節將對容易出現的幾個問題給出解決方法。
1.Docker安裝連接中斷
Docker 的在線安裝方式需要連接外網,所以對網速有一定的要求。在某些限網環境或者用網密集的情況下,很容易出現網速過慢、中斷連接的情況,如下圖所示:
Docker安裝連接中斷
從上圖看出,在安裝時出現了網絡連接速度過慢導致了下載安裝失敗的問題。
針對這種網速過慢的情況,建議開發者在網絡暢通的情況下重新下載安裝,或者使用他人提供的.deb文件進行離線安裝,當然也可以通過國內其他平臺提供的Docker源進行下載安裝。
2.Docker更新資源失敗
Docker執行更新apt索引包并進行安裝的過程中,可能會顯示無法獲取鎖等異常情況,如下圖所示。
上圖中問題的原因可能是由于另外一個程序(上次運行安裝或更新沒有正常完成)正在使用該程序,從而導致資源被鎖不可用。
這種問題解決的辦法其實很簡單,只需要在系統終端執行以下兩條指令即可。
猜你喜歡: