1.準備安裝環境
(1)禁用防火墻與SELinux
[root@localhost ~]# systemctl disable --now firewalld.service
Removed "/etc/systemd/system/multi-user.target.wants/firewalld.service".
Removed "/etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service".
[root@localhost ~]# sudo setenforce 0
(2)更改主機名
[root@localhost ~]# hostnamectl set-hostname host1
[root@localhost ~]# bash
2.?永久配置 DNS
CentOS Stream 9 默認用NetworkManager
管理網絡,需通過其工具永久配置 DNS:
[root@host1 ~]# nmcli connection show
NAME UUID TYPE DEVICE
ens160 19689312-b1bb-3a43-8c2d-d316680ab4a5 ethernet ens160
lo 86df2843-123d-41cc-b6ac-1cf41ce141e8 loopback lo
假設連接名稱為ens160
,執行以下命令配置 DNS:
[root@host1 ~]# nmcli connection modify ens160 ipv4.dns "8.8.8.8,114.114.114.114"
[root@host1 ~]# nmcli connection up ens160
驗證 DNS 是否生效:
# 查看當前生效的DNS
[root@host1 ~]# cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 8.8.8.8
nameserver 114.114.114.114
# 再次測試域名解析
[root@host1 ~]# nslookup mirrors.centos.org
Server:8.8.8.8
Address:8.8.8.8#53Non-authoritative answer:
mirrors.centos.orgcanonical name = mirrors.fedoraproject.org.
mirrors.fedoraproject.orgcanonical name = wildcard.fedoraproject.org.
Name:wildcard.fedoraproject.org
Address: 38.145.32.21
Name:wildcard.fedoraproject.org
Address: 152.2.23.103
Name:wildcard.fedoraproject.org
Address: 140.211.169.196
Name:wildcard.fedoraproject.org
Address: 8.43.85.67
Name:wildcard.fedoraproject.org
Address: 34.211.44.206
Name:wildcard.fedoraproject.org
Address: 8.43.85.73
Name:wildcard.fedoraproject.org
Address: 152.2.23.104
Name:wildcard.fedoraproject.org
Address: 67.219.144.68
Name:wildcard.fedoraproject.org
Address: 38.145.32.20
Name:wildcard.fedoraproject.org
Address: 2620:52:6:1121:bead:cafe:feed:fed5
Name:wildcard.fedoraproject.org
Address: 2606:f640:6000:651::7
Name:wildcard.fedoraproject.org
Address: 2606:f640:6000:651::8
Name:wildcard.fedoraproject.org
Address: 2620:52:3:1:dead:beef:cafe:fed6
Name:wildcard.fedoraproject.org
Address: 2605:bc80:3010:600:dead:beef:cafe:fed9
Name:wildcard.fedoraproject.org
Address: 2600:1f14:fad:5c02:5270:306c:35d6:1f81
Name:wildcard.fedoraproject.org
Address: 2620:52:3:1:dead:beef:cafe:fed7
Name:wildcard.fedoraproject.org
Address: 2604:1580:fe00:0:dead:beef:cafe:fed1
Name:wildcard.fedoraproject.org
Address: 2620:52:6:1121:bead:cafe:feed:fed6
3.更換國內鏡像源(如阿里云)
(1)備份原有倉庫配置
mkdir -p /etc/yum.repos.d/backup
mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup/
(2)下載阿里云的 CentOS Stream 9 倉庫配置
# 下載BaseOS倉庫配置
curl -o /etc/yum.repos.d/CentOS-Stream-BaseOS.repo https://mirrors.aliyun.com/repo/Centos-stream-9.repo
(3)清理緩存并重建
yum clean all
yum makecache # 生成新的緩存
4. 設置倉庫
(1)安裝?yum-utils 包
[root@host1 ~]# dnf makecache
CentOS Stream 9 - BaseOS (Aliyun) 3.0 MB/s | 8.8 MB 00:02
CentOS Stream 9 - AppStream (Aliyun) 3.8 MB/s | 25 MB 00:06
上次元數據過期檢查:0:00:03 前,執行于 2025年09月05日 星期五 16時25分24秒。
元數據緩存已建立。
[root@host1 ~]# dnf install -y yum-utils
上次元數據過期檢查:0:00:02 前,執行于 2025年09月05日 星期五 16時26分45秒。
依賴關系解決。
=====================================================================================================軟件包 架構 版本 倉庫 大小
=====================================================================================================
安裝:yum-utils noarch 4.3.0-22.el9 baseos 39 k事務概要
=====================================================================================================
安裝 1 軟件包總下載:39 k
安裝大小:23 k
下載軟件包:
yum-utils-4.3.0-22.el9.noarch.rpm 113 kB/s | 39 kB 00:00
-----------------------------------------------------------------------------------------------------
總計 111 kB/s | 39 kB 00:00
CentOS Stream 9 - BaseOS (Aliyun) 3.1 kB/s | 1.6 kB 00:00
導入 GPG 公鑰 0x8483C65D:Userid: "CentOS (CentOS Official Signing Key) <security@centos.org>"指紋: 99DB 70FA E1D7 CE22 7FB6 4882 05B5 55B3 8483 C65D來自: https://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-Official
導入公鑰成功
運行事務檢查
事務檢查成功。
運行事務測試
事務測試成功。
運行事務準備中 : 1/1 安裝 : yum-utils-4.3.0-22.el9.noarch 1/1 運行腳本: yum-utils-4.3.0-22.el9.noarch 1/1 驗證 : yum-utils-4.3.0-22.el9.noarch 1/1 已安裝:yum-utils-4.3.0-22.el9.noarch 完畢!
(2)添加倉庫
[root@host1 ~]# yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
添加倉庫自:https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
5. 安裝 Docker Engine
[root@host1 ~]# yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
上次元數據過期檢查:0:01:31 前,執行于 2025年09月05日 星期五 16時47分16秒。
依賴關系解決。
=====================================================================================================軟件包 架構 版本 倉庫 大小
=====================================================================================================
安裝:containerd.io x86_64 1.7.27-3.1.el9 docker-ce-stable 44 Mdocker-buildx-plugin x86_64 0.27.0-1.el9 docker-ce-stable 17 Mdocker-ce x86_64 3:28.4.0-1.el9 docker-ce-stable 21 Mdocker-ce-cli x86_64 1:28.4.0-1.el9 docker-ce-stable 8.6 Mdocker-compose-plugin x86_64 2.39.2-1.el9 docker-ce-stable 15 M
安裝弱的依賴:docker-ce-rootless-extras x86_64 28.4.0-1.el9 docker-ce-stable 3.4 M事務概要
=====================================================================================================
安裝 6 軟件包總下載:108 M
安裝大小:435 M
確定嗎?[y/N]: y
下載軟件包:
(1/6): docker-buildx-plugin-0.27.0-1.el9.x86_64.rpm 2.4 MB/s | 17 MB 00:06
(2/6): docker-ce-28.4.0-1.el9.x86_64.rpm 2.8 MB/s | 21 MB 00:07
(3/6): docker-ce-rootless-extras-28.4.0-1.el9.x86_64.rpm 2.4 MB/s | 3.4 MB 00:01
(4/6): docker-ce-cli-28.4.0-1.el9.x86_64.rpm 2.7 MB/s | 8.6 MB 00:03
(5/6): docker-compose-plugin-2.39.2-1.el9.x86_64.rpm 3.7 MB/s | 15 MB 00:04
(6/6): containerd.io-1.7.27-3.1.el9.x86_64.rpm 3.2 MB/s | 44 MB 00:13
-----------------------------------------------------------------------------------------------------
總計 7.8 MB/s | 108 MB 00:13
Docker CE Stable - x86_64 5.6 kB/s | 1.6 kB 00:00
導入 GPG 公鑰 0x621E9F35:Userid: "Docker Release (CE rpm) <docker@docker.com>"指紋: 060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35來自: https://mirrors.aliyun.com/docker-ce/linux/centos/gpg
確定嗎?[y/N]: y
導入公鑰成功
運行事務檢查
事務檢查成功。
運行事務測試
事務測試成功。
運行事務準備中 : 1/1 安裝 : docker-buildx-plugin-0.27.0-1.el9.x86_64 1/6 運行腳本: docker-buildx-plugin-0.27.0-1.el9.x86_64 1/6 安裝 : docker-compose-plugin-2.39.2-1.el9.x86_64 2/6 運行腳本: docker-compose-plugin-2.39.2-1.el9.x86_64 2/6 安裝 : docker-ce-cli-1:28.4.0-1.el9.x86_64 3/6 運行腳本: docker-ce-cli-1:28.4.0-1.el9.x86_64 3/6 安裝 : containerd.io-1.7.27-3.1.el9.x86_64 4/6 運行腳本: containerd.io-1.7.27-3.1.el9.x86_64 4/6 安裝 : docker-ce-rootless-extras-28.4.0-1.el9.x86_64 5/6 運行腳本: docker-ce-rootless-extras-28.4.0-1.el9.x86_64 5/6 安裝 : docker-ce-3:28.4.0-1.el9.x86_64 6/6 運行腳本: docker-ce-3:28.4.0-1.el9.x86_64 6/6 驗證 : containerd.io-1.7.27-3.1.el9.x86_64 1/6 驗證 : docker-buildx-plugin-0.27.0-1.el9.x86_64 2/6 驗證 : docker-ce-3:28.4.0-1.el9.x86_64 3/6 驗證 : docker-ce-cli-1:28.4.0-1.el9.x86_64 4/6 驗證 : docker-ce-rootless-extras-28.4.0-1.el9.x86_64 5/6 驗證 : docker-compose-plugin-2.39.2-1.el9.x86_64 6/6 已安裝:containerd.io-1.7.27-3.1.el9.x86_64 docker-buildx-plugin-0.27.0-1.el9.x86_64 docker-ce-3:28.4.0-1.el9.x86_64 docker-ce-cli-1:28.4.0-1.el9.x86_64 docker-ce-rootless-extras-28.4.0-1.el9.x86_64 docker-compose-plugin-2.39.2-1.el9.x86_64 完畢!
? ? ? ? 查看版本:
[root@host1 ~]# docker --version
Docker version 28.4.0, build d8eb465
? ? ? ? 列出所有版本
[root@host1 ~]# yum list docker-ce --showduplicates | sort -r
docker-ce.x86_64 3:28.4.0-1.el9 docker-ce-stable
docker-ce.x86_64 3:28.4.0-1.el9 @docker-ce-stable
docker-ce.x86_64 3:28.3.3-1.el9 docker-ce-stable
docker-ce.x86_64 3:28.3.2-1.el9 docker-ce-stable
docker-ce.x86_64 3:28.3.1-1.el9 docker-ce-stable
docker-ce.x86_64 3:28.3.0-1.el9 docker-ce-stable
docker-ce.x86_64 3:28.2.2-1.el9 docker-ce-stable
docker-ce.x86_64 3:28.2.1-1.el9 docker-ce-stable
docker-ce.x86_64 3:28.2.0-1.el9 docker-ce-stable
docker-ce.x86_64 3:28.1.1-1.el9 docker-ce-stable
docker-ce.x86_64 3:28.1.0-1.el9 docker-ce-stable
docker-ce.x86_64 3:28.0.4-1.el9 docker-ce-stable
docker-ce.x86_64 3:28.0.3-1.el9 docker-ce-stable
docker-ce.x86_64 3:28.0.2-1.el9 docker-ce-stable
docker-ce.x86_64 3:28.0.1-1.el9 docker-ce-stable
docker-ce.x86_64 3:28.0.0-1.el9 docker-ce-stable
docker-ce.x86_64 3:27.5.1-1.el9 docker-ce-stable
docker-ce.x86_64 3:27.5.0-1.el9 docker-ce-stable
docker-ce.x86_64 3:27.4.1-1.el9 docker-ce-stable
docker-ce.x86_64 3:27.4.0-1.el9 docker-ce-stable
docker-ce.x86_64 3:27.3.1-1.el9 docker-ce-stable
docker-ce.x86_64 3:27.3.0-1.el9 docker-ce-stable
docker-ce.x86_64 3:27.2.1-1.el9 docker-ce-stable
docker-ce.x86_64 3:27.2.0-1.el9 docker-ce-stable
docker-ce.x86_64 3:27.1.2-1.el9 docker-ce-stable
docker-ce.x86_64 3:27.1.1-1.el9 docker-ce-stable
docker-ce.x86_64 3:27.1.0-1.el9 docker-ce-stable
docker-ce.x86_64 3:27.0.3-1.el9 docker-ce-stable
docker-ce.x86_64 3:27.0.2-1.el9 docker-ce-stable
docker-ce.x86_64 3:27.0.1-1.el9 docker-ce-stable
docker-ce.x86_64 3:26.1.4-1.el9 docker-ce-stable
docker-ce.x86_64 3:26.1.3-1.el9 docker-ce-stable
docker-ce.x86_64 3:26.1.2-1.el9 docker-ce-stable
docker-ce.x86_64 3:26.1.1-1.el9 docker-ce-stable
docker-ce.x86_64 3:26.1.0-1.el9 docker-ce-stable
docker-ce.x86_64 3:26.0.2-1.el9 docker-ce-stable
docker-ce.x86_64 3:26.0.1-1.el9 docker-ce-stable
docker-ce.x86_64 3:26.0.0-1.el9 docker-ce-stable
docker-ce.x86_64 3:25.0.5-1.el9 docker-ce-stable
docker-ce.x86_64 3:25.0.4-1.el9 docker-ce-stable
docker-ce.x86_64 3:25.0.3-1.el9 docker-ce-stable
docker-ce.x86_64 3:25.0.2-1.el9 docker-ce-stable
docker-ce.x86_64 3:25.0.1-1.el9 docker-ce-stable
docker-ce.x86_64 3:25.0.0-1.el9 docker-ce-stable
docker-ce.x86_64 3:24.0.9-1.el9 docker-ce-stable
docker-ce.x86_64 3:24.0.8-1.el9 docker-ce-stable
docker-ce.x86_64 3:24.0.7-1.el9 docker-ce-stable
docker-ce.x86_64 3:24.0.6-1.el9 docker-ce-stable
docker-ce.x86_64 3:24.0.5-1.el9 docker-ce-stable
docker-ce.x86_64 3:24.0.4-1.el9 docker-ce-stable
docker-ce.x86_64 3:24.0.3-1.el9 docker-ce-stable
docker-ce.x86_64 3:24.0.2-1.el9 docker-ce-stable
docker-ce.x86_64 3:24.0.1-1.el9 docker-ce-stable
docker-ce.x86_64 3:24.0.0-1.el9 docker-ce-stable
docker-ce.x86_64 3:23.0.6-1.el9 docker-ce-stable
docker-ce.x86_64 3:23.0.5-1.el9 docker-ce-stable
docker-ce.x86_64 3:23.0.4-1.el9 docker-ce-stable
docker-ce.x86_64 3:23.0.2-1.el9 docker-ce-stable
docker-ce.x86_64 3:23.0.1-1.el9 docker-ce-stable
docker-ce.x86_64 3:23.0.0-1.el9 docker-ce-stable
docker-ce.x86_64 3:20.10.24-3.el9 docker-ce-stable
docker-ce.x86_64 3:20.10.23-3.el9 docker-ce-stable
docker-ce.x86_64 3:20.10.22-3.el9 docker-ce-stable
docker-ce.x86_64 3:20.10.21-3.el9 docker-ce-stable
docker-ce.x86_64 3:20.10.20-3.el9 docker-ce-stable
docker-ce.x86_64 3:20.10.19-3.el9 docker-ce-stable
docker-ce.x86_64 3:20.10.18-3.el9 docker-ce-stable
docker-ce.x86_64 3:20.10.17-3.el9 docker-ce-stable
docker-ce.x86_64 3:20.10.16-3.el9 docker-ce-stable
docker-ce.x86_64 3:20.10.15-3.el9 docker-ce-stable
已安裝的軟件包
上次元數據過期檢查:0:05:43 前,執行于 2025年09月05日 星期五 16時47分16秒。
可安裝的軟件包
? ? ? ? 選擇版本安裝
yum install docker-ce-版本號 #后面一樣操作
6. 啟動并測試
[root@host1 ~]# systemctl start docker
[root@host1 ~]# docker run hello-world #運行 hello-world 鏡像驗證
Unable to find image 'hello-world:latest' locally
docker: Error response from daemon: Get "https://registry-1.docker.io/v2/": context deadline exceededRun 'docker run --help' for more information
7. 鏡像加速配置
(1)創建配置文件
sudo mkdir -p /etc/docker
(2)寫入阿里云加速配置
tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": ["https://jnh8ca4k.mirror.aliyuncs.com"]
}
EOF
(3)重啟服務生效
sudo systemctl daemon-reload
sudo systemctl restart docker
???關鍵注意事項
生產環境操作前建議創建系統快照
避免直接使用?
sudo rm -rf
?清理目錄(除非確認無重要數據)定期執行?
dnf update
?保持組件更新