如何在CentOS 8 上安裝 Docker 流程


How to install Docker CE on RHEL 8 / CentOS 8

今天在新的CentOS 8.2 上進行 Docker install,發生了一些問題,後來查了一下網路資料,整理了一下記錄安裝流程,之後有人要使用比較方便,之前沒有用過 DNF 都是使用 YUM,這一次也用到了,也查了一下相關資料。

指令說明:

DNF,全稱Dandified Yum,是RPM發行版的軟體包管理器Yellowdog Updater, Modified(yum)的下一代版本。DNF最早出現在Fedora 18中,並在Fedora 22、RHEL8中替代yum。DNF旨在解決部分yum已知的不足之處,包括糟糕的效能、高記憶體使用、緩慢的疊代拓撲排序。DNF使用了外部依賴解析器libsolv

# 安裝套件
[root@CentOS-8 ~]# dnf install [package]

#升級套件:
[root@CentOS-8 ~]# dnf update [package]

#移除套件:
[root@CentOS-8 ~]# dnf remove [package]

#列出所有用 DNF 安裝的套件:
[root@CentOS-8 ~]# dnf list installed

#搜索可安裝的套件:
[root@CentOS-8 ~]# dnf search [package]

一、進入服務器後執行dnf config-manager 加入 docker-ce Repo.

[root@CentOS-8 ~]# sudo dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo

二、執行dnf repolist -v 確認 Repositories 是否 enabled

[root@CentOS-8 ~]# dnf repolist -v
//-------------(略)-------------//
Repo-id            : docker-ce-stable
Repo-name          : Docker CE Stable - x86_64
Repo-revision      : 1600369427
Repo-updated       : 西元2020年09月18日 (週五) 03時03分47秒
Repo-pkgs          : 3
Repo-available-pkgs: 3
Repo-size          : 91 M
Repo-baseurl       : https://download.docker.com/linux/centos/8/x86_64/stable
Repo-expire        : 172,800 秒(上次:西元2020年11月17日 (週二) 14時02分25秒)
Repo-filename      : /etc/yum.repos.d/docker-ce.repo

Repo-id            : epel
Repo-name          : Extra Packages for Enterprise Linux 8 - x86_64
Repo-revision      : 1605572668
Repo-updated       : 西元2020年11月17日 (週二) 08時24分56秒
Repo-pkgs          : 6,687
Repo-available-pkgs: 6,686
Repo-size          : 9.2 G
Repo-metalink      : https://mirrors.fedoraproject.org/metalink?repo=epel-8&arch=x86_64&infra=stock&content=centos
  Updated          : 西元2020年11月17日 (週二) 13時58分06秒
Repo-baseurl       : http://ftp.yz.yamagata-u.ac.jp/pub/linux/fedora-projects/epel/8/Everything/x86_64/ (16 more)
Repo-expire        : 172,800 秒(上次:西元2020年11月17日 (週二) 13時58分06秒)
Repo-filename      : /etc/yum.repos.d/epel.repo
//-------------(略)-------------//
Total packages: 13,834

三、確認目前適用的版本 dnf list docker-ce –showduplicates | sort -r

[root@CentOS-8 ~]# dnf list docker-ce --showduplicates | sort -r
可用的軟體包
上次中介資料過期檢查:0:54:35 以前,時間點為西元2020年11月17日 (週二) 14時02分25秒。
docker-ce.x86_64                3:19.03.13-3.el8                docker-ce-stable

四、執行 dnf install docker-ce-3:19.03.13-3.el8 進行安裝

[root@CentOS-8 ~]# dnf install docker-ce-3:19.03.13-3.el8
上次中介資料過期檢查:0:55:31 以前,時間點為西元2020年11月17日 (週二) 14時02分25秒。
依賴關係解析完畢。
=====================================================================================================================
 Package                        Architecture       Version                                  Repository         Size
=====================================================================================================================
安裝:
 docker-ce                      x86_64             3:19.03.13-3.el8                         docker-ce-stable   24 M
將安裝依賴項目:
 checkpolicy                    x86_64             2.9-1.el8                                BaseOS            348 k
 container-selinux              noarch             2:2.124.0-1.module_el8.2.0+305+5e198a41  AppStream          47 k
 containerd.io                  x86_64             1.3.7-3.1.el8                            docker-ce-stable   29 M
 docker-ce-cli                  x86_64             1:19.03.13-3.el8                         docker-ce-stable   38 M
 libcgroup                      x86_64             0.41-19.el8                              BaseOS             70 k
 policycoreutils-python-utils   noarch             2.9-9.el8                                BaseOS            251 k
 python3-audit                  x86_64             3.0-0.17.20191104git1c2f876.el8          BaseOS             86 k
 python3-libsemanage            x86_64             2.9-2.el8                                BaseOS            127 k
 python3-policycoreutils        noarch             2.9-9.el8                                BaseOS            2.2 M
 python3-setools                x86_64             4.2.2-2.el8                              BaseOS            601 k
Enabling module streams:
 container-tools                                   rhel8

處理事項摘要
=====================================================================================================================
安裝  11 軟體包

總下載大小:95 M
安裝的大小:395 M
這樣可以嗎 [y/N]: y
下載軟體包:
(1/11): libcgroup-0.41-19.el8.x86_64.rpm                                                314 kB/s |  70 kB     00:00
(2/11): container-selinux-2.124.0-1.module_el8.2.0+305+5e198a41.noarch.rpm              201 kB/s |  47 kB     00:00
(3/11): checkpolicy-2.9-1.el8.x86_64.rpm                                                1.0 MB/s | 348 kB     00:00
(4/11): python3-audit-3.0-0.17.20191104git1c2f876.el8.x86_64.rpm                        475 kB/s |  86 kB     00:00
(5/11): python3-libsemanage-2.9-2.el8.x86_64.rpm                                        700 kB/s | 127 kB     00:00
(6/11): policycoreutils-python-utils-2.9-9.el8.noarch.rpm                               258 kB/s | 251 kB     00:00
(7/11): python3-setools-4.2.2-2.el8.x86_64.rpm                                          870 kB/s | 601 kB     00:00
(8/11): docker-ce-19.03.13-3.el8.x86_64.rpm                                             1.4 MB/s |  24 MB     00:17
(9/11): containerd.io-1.3.7-3.1.el8.x86_64.rpm                                          1.0 MB/s |  29 MB     00:28
(10/11): docker-ce-cli-19.03.13-3.el8.x86_64.rpm                                        1.7 MB/s |  38 MB     00:22
(11/11): python3-policycoreutils-2.9-9.el8.noarch.rpm                                    52 kB/s | 2.2 MB     00:43
--------------------------------------------------------------------------------------------------------------------
總計                                                                                     2.1 MB/s |  95 MB     00:45
警告:/var/cache/dnf/docker-ce-stable-fa9dc42ab4cec2f4/packages/containerd.io-1.3.7-3.1.el8.x86_64.rpm: 表頭 V4
RSA/SHA512 Signature, key ID 621e9f35: NOKEYDocker CE Stable - x86_64                    10 kB/s | 1.6 kB     00:00
匯入 GPG 密鑰 0x621E9F35:
使用者識別碼:"Docker Release (CE rpm) <docker@docker.com>"
指紋                :060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35
來自                :https://download.docker.com/linux/centos/gpg
這樣可以嗎 [y/N]: y
密鑰匯入成功
執行處理事項檢查
處理事項檢查成功。
執行處理事項測試
處理事項測試成功。
執行處理事項

//------------------------(略)------------------------//

已安裝:
  checkpolicy-2.9-1.el8.x86_64                   container-selinux-2:2.124.0-1.module_el8.2.0+305+5e198a41.noarch
  containerd.io-1.3.7-3.1.el8.x86_64                
  docker-ce-3:19.03.13-3.el8.x86_64              docker-ce-cli-1:19.03.13-3.el8.x86_64
  libcgroup-0.41-19.el8.x86_64                      
  policycoreutils-python-utils-2.9-9.el8.noarch  python3-audit-3.0-0.17.20191104git1c2f876.el8.x86_64
  python3-libsemanage-2.9-2.el8.x86_64              
  python3-policycoreutils-2.9-9.el8.noarch       python3-setools-4.2.2-2.el8.x86_64

完成!

五、安裝 docker-compose

[root@CentOS-8 ~]# curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   651  100   651    0     0   3677      0 --:--:-- --:--:-- --:--:--  3657
100 11.6M  100 11.6M    0     0   234k      0  0:00:50  0:00:50 --:--:--  264k
[root@CentOS-8 ~]# chmod +x /usr/local/bin/docker-compose
[root@CentOS-8 ~]# docker-compose -version
docker-compose version 1.27.4, build 40524192
,