安裝前準備
CentOS版本
要安裝Docker Engine,你需要以下CentOS版本中的一個維護版本:
- CentOS 7
- CentOS 8 (stream)
- CentOS 9 (stream)
centos-extras
倉庫必須被啟用。這個倉庫默認是啟用的,但如果你已經(jīng)禁用了它,你需要重新啟用它。
刪除舊版本
舊版本的Docker以docker
或docker-engine
為名。在嘗試安裝新版本之前,請卸載任何此類舊版本,以及相關的依賴關系。
$ sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
當你卸載Docker時,存儲在/var/lib/docker/
中的鏡像、容器、數(shù)據(jù)卷和網(wǎng)絡不會自動刪除。
通過Yum進行安裝
在你第一次在新主機上安裝Docker Engine之前,你需要設置Docker倉庫。之后,你可以從存儲庫中安裝和更新Docker。
設置存儲庫
安裝yum-utils
軟件包(提供yum-config-manager
工具),并設置資源庫。
$ sudo yum install -y yum-utils
$ sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
安裝Docker Engine
- 安裝Docker Engine、containerd和Docker Compose:
$ sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
如果提示接受GPG密鑰,驗證指紋是否與060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35
相匹配,如果是,就接受它。
這條命令安裝了Docker,但它并沒有啟動Docker。它還創(chuàng)建了一個docker
組,但是,默認情況下,它沒有添加任何用戶到該組。
- 啟動Docker
$ sudo systemctl start docker
- 通過運行
hello-world
鏡像,驗證Docker的安裝是否成功。
$ sudo docker run hello-world
這個命令會下載一個測試鏡像并在一個容器中運行。當容器運行時,它會打印出一條確認信息并退出。
現(xiàn)在你已經(jīng)成功安裝并啟動了Docker Engine。
使用RPM包進行安裝
如果你不能使用Docker的rpm
倉庫來安裝Docker Engine,你可以下載符合你期望的版本的.rpm
文件并手動安裝。每次你想升級Docker Engine時,你都需要下載一個新的文件。
-
進入Docker官網(wǎng)下載界面,選擇你的CentOS版本。然后瀏覽
x86_64/stable/Packages/
,下載你要安裝的Docker版本的.rpm
文件。 -
安裝Docker Engine,將下面的路徑改為你下載Docker包的路徑。
$ sudo yum install /path/to/package.rpm
Docker已經(jīng)安裝,但沒有啟動。創(chuàng)建了docker組,但沒有用戶被添加到該組。
- 啟動Docker
$ sudo systemctl start docker
- 通過運行
hello-world
鏡像,驗證Docker Engine的安裝是否成功。
$ sudo docker run hello-world
這個命令會下載一個測試鏡像并在一個容器中運行。當容器運行時,它會打印出一條確認信息并退出。
現(xiàn)在你已經(jīng)成功安裝并啟動了Docker Engine。
使用腳本安裝
Docker在https://get.docker.com/,提供了一個方便的腳本,可以將Docker非交互式地安裝到開發(fā)環(huán)境。不建議在生產(chǎn)環(huán)境中使用該便利腳本,但它對創(chuàng)建符合你需求的配置腳本很有用。該腳本的源代碼是開源的,你可以在GitHub上的docker-install
找到它。
在本地運行從互聯(lián)網(wǎng)上下載的腳本之前,一定要檢查它們。在安裝之前,要讓自己熟悉潛在的風險和便利腳本的限制:
- 該腳本需要
root
或sudo
權(quán)限才能運行。 - 該腳本試圖檢測你的Linux發(fā)行版和版本,并為你配置你的軟件包管理系統(tǒng)。
- 腳本不允許你自定義大多數(shù)安裝參數(shù)。
- 腳本在安裝依賴關系和建議時不要求確認。這可能會安裝大量的軟件包,這取決于你主機的當前配置。
- 默認情況下,該腳本會安裝Docker、containerd和runc的最新穩(wěn)定版本。當使用該腳本配置機器時,這可能會導致Docker的主要版本意外升級。在部署到生產(chǎn)系統(tǒng)之前,一定要在測試環(huán)境中測試升級。
- 這個腳本并不是用來升級現(xiàn)有的Docker安裝的。當使用該腳本更新現(xiàn)有的安裝時,依賴關系可能不會被更新到預期的版本,從而導致過時的版本。
你可以用-dry-run選項來運行腳本,了解腳本在被調(diào)用時將運行哪些步驟:
點擊查看代碼
$ curl -fsSL https://get.docker.com -o get-docker.sh
$ sudo sh ./get-docker.sh --dry-run
以下這個例子是從https://get.docker.com/下載腳本,并運行該腳本以在Linux上安裝最新的Docker穩(wěn)定版:文章來源:http://www.zghlxwxcb.cn/news/detail-464809.html
$ curl -fsSL https://get.docker.com -o get-docker.sh
$ sudo sh get-docker.sh
Executing docker install script, commit: 7cae5f8b0decc17d6571f9f52eb840fbc13b2737
<...>
你現(xiàn)在已經(jīng)成功安裝并啟動了Docker Engine。在基于Debian的發(fā)行版上,docker
服務會自動啟動。在基于RPM
的發(fā)行版上,如CentOS、Fedora、RHEL或SLES,你需要使用適當?shù)?code>systemctl或service
命令手動啟動它。如信息所示,非root用戶默認不能運行Docker命令。文章來源地址http://www.zghlxwxcb.cn/news/detail-464809.html
到了這里,關于CentOS通過yum安裝Docker的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!