如何在 Ubuntu 上安裝 Docker
使用 Docker 意味著開啟一個(gè)新的計(jì)算領(lǐng)域,但如果你剛剛開始使用 Docker,安裝可能看起來是一項(xiàng)艱巨的任務(wù)。
在 Ubuntu 上安裝 Docker 有兩種推薦的方法:
- 從 Ubuntu 的倉庫安裝 Docker:簡單的單行命令,但提供舊版本
- 使用 Docker 的官方倉庫:工作量稍多,但提供了最新的穩(wěn)定版本
我將在本教程中討論它們。
方法 1:使用 Ubuntu 的倉庫安裝 Docker
如果你不在意舊版本,并且不想設(shè)置和管理倉庫,那么這是最適合你的方法。
從更新倉庫索引開始:
sudo apt update
現(xiàn)在,你可以使用以下命令在 Ubuntu 中安裝 Docker 以及 Docker Compose:
sudo apt install docker.io docker-compose
?? Docker 包被命名為
docker.io
,因?yàn)樵?Docker 出現(xiàn)之前就已經(jīng)存在一個(gè)名為 docker(用于 Dockerlet 應(yīng)用)的過渡包。因此,Docker 包必須被命名為其他名稱。
安裝完成后,你可以使用以下命令檢查安裝的版本:
docker -v
如你所見,它給了我 Docker 24.0.5。
方法 2:在 Ubuntu 中安裝最新穩(wěn)定版本的 Docker
如果你想要 Docker 的最新穩(wěn)定版本,那么你可以從其官方倉庫安裝 Docker。
步驟 1:刪除任何現(xiàn)有的 Docker 包
但在跳到安裝部分之前,有必要?jiǎng)h除所有以前安裝的 Docker。
要 卸載以前的 Docker,請(qǐng)使用以下命令。
sudo apt remove docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc
步驟 2:安裝依賴項(xiàng)
第一步是安裝一些必要的軟件包,這些軟件包將用于在本教程后面安裝 Docker:
sudo apt install ca-certificates curl gnupg lsb-release
你可能已經(jīng)安裝了部分或全部這些軟件包,但確認(rèn)安裝沒有什么壞處。上面的命令不會(huì)傷害你。
步驟 3:添加 Docker 倉庫的 GPG 密鑰并將其添加到 sources.list
現(xiàn)在,通過 apt
包管理器創(chuàng)建一個(gè)具有特殊權(quán)限的目錄,用于存儲(chǔ)加密密鑰以進(jìn)行包驗(yàn)證:
sudo install -m 0755 -d /etc/apt/keyrings
接下來,如下所示 使用 curl 命令 下載并導(dǎo)入 Docker 的 GPG 密鑰環(huán):
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
下載 GPG 密鑰后,使用 chmod 命令更改文件權(quán)限,以便系統(tǒng)上的每個(gè)用戶都可以讀取 GPG 密鑰:
sudo chmod a+r /etc/apt/keyrings/docker.gpg
最后,將 Docker 倉庫添加到 sources.list.d
文件中:
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
就是這樣!
步驟 4:安裝 Docker 和 Docker Compose
現(xiàn)在,要使你對(duì)系統(tǒng)所做的更改生效,請(qǐng)更新系統(tǒng)倉庫:
sudo apt update
使用以下命令獲取最新版本的 Docker 以及其他 Docker 組件和依賴項(xiàng):
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
?? 雖然 docker.io 包安裝了大部分必需的 Docker 組件,但你需要在此處單獨(dú)進(jìn)行安裝。
要檢查已安裝的版本,請(qǐng)使用以下命令:
docker -v
測試安裝的另一個(gè)方法是在 Docker 中使用 “Hello World” 鏡像。
讓我告訴你如何做。
使用 hello-world 鏡像來驗(yàn)證 Docker 安裝
運(yùn)行 “Hello World” 程序是我們啟動(dòng)任何編程之旅時(shí)都遵循的標(biāo)準(zhǔn)做法,Docker 也是如此。
Docker 為你提供了一個(gè) “Hello World” 鏡像,你可以使用它來測試安裝。
要安裝并運(yùn)行 “Hello World” 鏡像,只需使用以下命令:
sudo docker run hello-world
某些用戶在執(zhí)行上述命令時(shí)可能會(huì)收到錯(cuò)誤消息“無法連接到 Docker 守護(hù)進(jìn)程”:
在這種情況下,重新啟動(dòng)系統(tǒng)并再次嘗試安裝 Docker Hello World 鏡像,它將正常工作。
?? 額外提示:在 Ubuntu 中使用 Docker 而無需 sudo
如果你注意到了,我使用 sudo 來拉取 Docker 鏡像,這并不是使用 Docker 最方便的方式。
如果你嘗試在不使用 sudo 的情況下使用 Docker,則會(huì)出現(xiàn)錯(cuò)誤:
好吧,在本節(jié)中,我將向你展示如何在沒有 sudo 的情況下使用 Docker。
?? 要執(zhí)行所示步驟,必須具有超級(jí)用戶權(quán)限!
第一步是使用以下命令 創(chuàng)建一個(gè)名為 docker 的新組:
sudo groupadd docker
完成后,使用以下命令將用戶添加到 docker
組:
sudo usermod -aG docker <用戶名>
?? 確保你只添加具有超級(jí)用戶權(quán)限的用戶。
現(xiàn)在,注銷并重新登錄以使更改生效。但如果你使用的是虛擬機(jī),那么必須重新啟動(dòng)。
就是這樣!從現(xiàn)在開始,你可以使用 docker
命令而不需要 sudo,就像我運(yùn)行 Docker Hello World 鏡像一樣:
就這樣吧。
這是安裝 Docker 后要做的事情
如果你剛剛開始,請(qǐng)參閱每個(gè)用戶都必須了解的 基本 Docker 命令列表:
我希望你覺得會(huì)有幫助。