银河麒麟V10 Docker安装
操作系统: 确认是银河麒麟高级服务器操作系统 V10。运行 cat /etc/.kyinfo 查看。
Authorized users only. All activities may be monitored and reported.
Activate the web console with: systemctl enable --now cockpit.socketLast login: Sun Oct 19 19:56:36 2025 from 192.168.52.100
[root@kylin10 ~]# cat /etc/.kyinfo
[dist]
name=Kylin-Server
milestone=V10
arch=x86_64
beta=False
time=2024-05-08 10:33:19
dist_id=Kylin-Server-V10-SP3-2403-Release-20240426-x86_64-2024-05-08 10:33:19[servicekey]
key=0415040[os]
to=
term=2025-09-01-----
②架构: 主流 x86_64 或 ARM64 均可。运行 arch 查看。
[root@kylin10 ~]# arch
x86_64
③权限: 使用 root 用户 或 具有 sudo 权限的普通用户 执行安装和配置操作。本文后续命令默认以 root 执行,如用 sudo 用户,请在命令前加 sudo。
[root@kylin10 ~]# whoami
root
④网络: 确保服务器能正常访问互联网(用于安装软件包和拉取镜像)。
⑤存储: 保证 /var/lib/docker目录所在分区有足够空间(存放镜像、容器等)。
2.清理旧版本(如有) 如果之前装过旧版 Docker(可能叫 docker, docker.io, 或 docker-engine),先卸载它们以及关联的配置文件:
[root@kylin10 ~]# yum remove docker
No match for argument: docker
No packages marked for removal.
Dependencies resolved.
Nothing to do.
Complete!
[root@kylin10 ~]# yum remove docker \
> docker-client \
> docker-client-latest \
> docker-common \
> docker-latest \
> docker-latest-logrotate \
> docker-logrotate \
> docker-engine
No match for argument: docker
No match for argument: docker-client
No match for argument: docker-client-latest
No match for argument: docker-common
No match for argument: docker-latest
No match for argument: docker-latest-logrotate
No match for argument: docker-logrotate
No match for argument: docker-engine
No packages marked for removal.
Dependencies resolved.
Nothing to do.
Complete!
[root@kylin10 ~]#
二、安装docker
1.安装docker
[root@kylin10 yum.repos.d]# yum install -y docker-engine
Last metadata expiration check: 0:20:22 ago on 2025年10月19日 星期日 20时04分45秒.
Dependencies resolved.
================================================================================Package Arch Version Repository Size
================================================================================
Installing:docker-engine x86_64 1:18.09.0-261.p06.04.ky10 ks10-adv-updates 33 M
Installing dependencies:containerd x86_64 1.2.0-213.p04.ky10 ks10-adv-updates 15 Mdocker-proxy x86_64 0.8.0.dev.2-100.p04.ky10 ks10-adv-updates 757 kTransaction Summary
================================================================================
Install 3 PackagesTotal download size: 49 M
Installed size: 203 M
Downloading Packages:
(1/3): docker-proxy-0.8.0.dev.2-100.p04.ky10.x8 7.1 MB/s | 757 kB 00:00
(2/3): containerd-1.2.0-213.p04.ky10.x86_64.rpm 2.4 MB/s | 15 MB 00:06
(3/3): docker-engine-18.09.0-261.p06.04.ky10.x8 4.2 MB/s | 33 MB 00:07
--------------------------------------------------------------------------------
Total 6.1 MB/s | 49 MB 00:07
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transactionPreparing : 1/1Installing : docker-proxy-0.8.0.dev.2-100.p04.ky10.x86_64 1/3Installing : containerd-1.2.0-213.p04.ky10.x86_64 2/3Installing : docker-engine-1:18.09.0-261.p06.04.ky10.x86_64 3/3Running scriptlet: docker-engine-1:18.09.0-261.p06.04.ky10.x86_64 3/3
Created symlink /etc/systemd/system/multi-user.target.wants/docker.service → /usr/lib/systemd/system/docker.service.Verifying : containerd-1.2.0-213.p04.ky10.x86_64 1/3Verifying : docker-engine-1:18.09.0-261.p06.04.ky10.x86_64 2/3Verifying : docker-proxy-0.8.0.dev.2-100.p04.ky10.x86_64 3/3Installed:containerd-1.2.0-213.p04.ky10.x86_64docker-engine-1:18.09.0-261.p06.04.ky10.x86_64docker-proxy-0.8.0.dev.2-100.p04.ky10.x86_64Complete!
[root@kylin10 yum.repos.d]#
查看是否安装docker
[root@kylin10 yum.repos.d]# docker -v
Docker version 18.09.0, build
2.安装docker-compose
[root@kylin10 yum.repos.d]# yum install -y docker-compose
Last metadata expiration check: 0:22:04 ago on 2025年10月19日 星期日 20时04分45秒.
Dependencies resolved.
================================================================================Package Arch Version Repository Size
================================================================================
Installing:docker-compose noarch 1.22.0-4.ky10 ks10-adv-os 233 k
Installing dependencies:libsodium x86_64 1.0.18-1.ky10 ks10-adv-os 152 kpython3-bcrypt x86_64 3.2.0-1.ky10 ks10-adv-os 40 kpython3-cached_property noarch 1.5.1-1.ky10 ks10-adv-os 17 kpython3-docker noarch 4.0.2-1.ky10 ks10-adv-os 204 kpython3-docker-pycreds noarch 0.4.0-1.1.ky10 ks10-adv-os 21 kpython3-dockerpty noarch 0.4.1-1.ky10 ks10-adv-os 30 kpython3-docopt noarch 0.6.2-11.ky10 ks10-adv-os 30 kpython3-ipaddress noarch 1.0.23-1.ky10 ks10-adv-os 41 kpython3-jsonschema noarch 2.6.0-6.ky10 ks10-adv-os 78 kpython3-paramiko noarch 2.11.0-2.ky10 ks10-adv-updates 300 kpython3-pyasn1 noarch 0.4.8-1.ky10 ks10-adv-os 136 kpython3-pynacl x86_64 1.2.1-5.ky10 ks10-adv-os 77 kpython3-texttable noarch 1.4.0-2.ky10 ks10-adv-os 25 kpython3-websocket-client noarch 0.47.0-6.ky10 ks10-adv-os 61 kTransaction Summary
================================================================================
Install 15 PackagesTotal download size: 1.4 M
Installed size: 5.4 M
Downloading Packages:
(1/15): python3-bcrypt-3.2.0-1.ky10.x86_64.rpm 395 kB/s | 40 kB 00:00
(2/15): libsodium-1.0.18-1.ky10.x86_64.rpm 1.2 MB/s | 152 kB 00:00
(3/15): docker-compose-1.22.0-4.ky10.noarch.rpm 1.7 MB/s | 233 kB 00:00
(4/15): python3-cached_property-1.5.1-1.ky10.no 510 kB/s | 17 kB 00:00
(5/15): python3-docker-4.0.2-1.ky10.noarch.rpm 7.1 MB/s | 204 kB 00:00
(6/15): python3-docker-pycreds-0.4.0-1.1.ky10.n 1.0 MB/s | 21 kB 00:00
(7/15): python3-dockerpty-0.4.1-1.ky10.noarch.r 1.1 MB/s | 30 kB 00:00
(8/15): python3-docopt-0.6.2-11.ky10.noarch.rpm 1.4 MB/s | 30 kB 00:00
(9/15): python3-ipaddress-1.0.23-1.ky10.noarch. 1.8 MB/s | 41 kB 00:00
(10/15): python3-jsonschema-2.6.0-6.ky10.noarch 2.9 MB/s | 78 kB 00:00
(11/15): python3-pyasn1-0.4.8-1.ky10.noarch.rpm 4.9 MB/s | 136 kB 00:00
(12/15): python3-pynacl-1.2.1-5.ky10.x86_64.rpm 3.3 MB/s | 77 kB 00:00
(13/15): python3-texttable-1.4.0-2.ky10.noarch. 829 kB/s | 25 kB 00:00
(14/15): python3-paramiko-2.11.0-2.ky10.noarch. 8.1 MB/s | 300 kB 00:00
(15/15): python3-websocket-client-0.47.0-6.ky10 559 kB/s | 61 kB 00:00
--------------------------------------------------------------------------------
Total 4.5 MB/s | 1.4 MB 00:00
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transactionPreparing : 1/1Installing : python3-websocket-client-0.47.0-6.ky10.noarch 1/15Installing : python3-docker-pycreds-0.4.0-1.1.ky10.noarch 2/15Installing : python3-texttable-1.4.0-2.ky10.noarch 3/15Installing : python3-pyasn1-0.4.8-1.ky10.noarch 4/15Installing : python3-jsonschema-2.6.0-6.ky10.noarch 5/15Installing : python3-ipaddress-1.0.23-1.ky10.noarch 6/15Installing : python3-docopt-0.6.2-11.ky10.noarch 7/15Installing : python3-dockerpty-0.4.1-1.ky10.noarch 8/15Installing : python3-cached_property-1.5.1-1.ky10.noarch 9/15Installing : python3-bcrypt-3.2.0-1.ky10.x86_64 10/15Installing : libsodium-1.0.18-1.ky10.x86_64 11/15Installing : python3-pynacl-1.2.1-5.ky10.x86_64 12/15Installing : python3-paramiko-2.11.0-2.ky10.noarch 13/15Installing : python3-docker-4.0.2-1.ky10.noarch 14/15Installing : docker-compose-1.22.0-4.ky10.noarch 15/15Running scriptlet: docker-compose-1.22.0-4.ky10.noarch 15/15Verifying : docker-compose-1.22.0-4.ky10.noarch 1/15Verifying : libsodium-1.0.18-1.ky10.x86_64 2/15Verifying : python3-bcrypt-3.2.0-1.ky10.x86_64 3/15Verifying : python3-cached_property-1.5.1-1.ky10.noarch 4/15Verifying : python3-docker-4.0.2-1.ky10.noarch 5/15Verifying : python3-docker-pycreds-0.4.0-1.1.ky10.noarch 6/15Verifying : python3-dockerpty-0.4.1-1.ky10.noarch 7/15Verifying : python3-docopt-0.6.2-11.ky10.noarch 8/15Verifying : python3-ipaddress-1.0.23-1.ky10.noarch 9/15Verifying : python3-jsonschema-2.6.0-6.ky10.noarch 10/15Verifying : python3-pyasn1-0.4.8-1.ky10.noarch 11/15Verifying : python3-pynacl-1.2.1-5.ky10.x86_64 12/15Verifying : python3-texttable-1.4.0-2.ky10.noarch 13/15Verifying : python3-websocket-client-0.47.0-6.ky10.noarch 14/15Verifying : python3-paramiko-2.11.0-2.ky10.noarch 15/15Installed:docker-compose-1.22.0-4.ky10.noarchlibsodium-1.0.18-1.ky10.x86_64python3-bcrypt-3.2.0-1.ky10.x86_64python3-cached_property-1.5.1-1.ky10.noarchpython3-docker-4.0.2-1.ky10.noarchpython3-docker-pycreds-0.4.0-1.1.ky10.noarchpython3-dockerpty-0.4.1-1.ky10.noarchpython3-docopt-0.6.2-11.ky10.noarchpython3-ipaddress-1.0.23-1.ky10.noarchpython3-jsonschema-2.6.0-6.ky10.noarchpython3-paramiko-2.11.0-2.ky10.noarchpython3-pyasn1-0.4.8-1.ky10.noarchpython3-pynacl-1.2.1-5.ky10.x86_64python3-texttable-1.4.0-2.ky10.noarchpython3-websocket-client-0.47.0-6.ky10.noarchComplete!
[root@kylin10 yum.repos.d]#
3.验证安装是否成功 查看docker服务的状态和信息:
[root@kylin10 yum.repos.d]# systemctl status docker
● docker.service - Docker Application Container EngineLoaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor pres>Active: active (running) since Sun 2025-10-19 20:25:25 CST; 2min 17s agoDocs: https://docs.docker.comMain PID: 11953 (dockerd)Tasks: 21Memory: 70.5MCGroup: /system.slice/docker.service├─11953 /usr/bin/dockerd --live-restore└─11960 containerd --config /var/run/docker/containerd/containerd.to>10月 19 20:25:24 kylin10.localdomain dockerd[11960]: time="2025-10-19T20:25:24.>
10月 19 20:25:24 kylin10.localdomain dockerd[11953]: time="2025-10-19T20:25:24.>
10月 19 20:25:24 kylin10.localdomain dockerd[11953]: time="2025-10-19T20:25:24.>
10月 19 20:25:24 kylin10.localdomain dockerd[11953]: time="2025-10-19T20:25:24.>
10月 19 20:25:24 kylin10.localdomain dockerd[11953]: time="2025-10-19T20:25:24.>
10月 19 20:25:24 kylin10.localdomain dockerd[11953]: time="2025-10-19T20:25:24.>
10月 19 20:25:25 kylin10.localdomain dockerd[11953]: time="2025-10-19T20:25:25.>
10月 19 20:25:25 kylin10.localdomain dockerd[11953]: time="2025-10-19T20:25:25.>
10月 19 20:25:25 kylin10.localdomain dockerd[11953]: time="2025-10-19T20:25:25.>
10月 19 20:25:25 kylin10.localdomain systemd[1]: Started Docker Application Con>
...skipping...
● docker.service - Docker Application Container EngineLoaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor pres>Active: active (running) since Sun 2025-10-19 20:25:25 CST; 2min 17s agoDocs: https://docs.docker.comMain PID: 11953 (dockerd)Tasks: 21Memory: 70.5MCGroup: /system.slice/docker.service├─11953 /usr/bin/dockerd --live-restore└─11960 containerd --config /var/run/docker/containerd/containerd.to>10月 19 20:25:24 kylin10.localdomain dockerd[11960]: time="2025-10-19T20:25:24.>
10月 19 20:25:24 kylin10.localdomain dockerd[11953]: time="2025-10-19T20:25:24.>
10月 19 20:25:24 kylin10.localdomain dockerd[11953]: time="2025-10-19T20:25:24.>
10月 19 20:25:24 kylin10.localdomain dockerd[11953]: time="2025-10-19T20:25:24.>
10月 19 20:25:24 kylin10.localdomain dockerd[11953]: time="2025-10-19T20:25:24.>
10月 19 20:25:24 kylin10.localdomain dockerd[11953]: time="2025-10-19T20:25:24.>
10月 19 20:25:25 kylin10.localdomain dockerd[11953]: time="2025-10-19T20:25:25.>
10月 19 20:25:25 kylin10.localdomain dockerd[11953]: time="2025-10-19T20:25:25.>
10月 19 20:25:25 kylin10.localdomain dockerd[11953]: time="2025-10-19T20:25:25.>
10月 19 20:25:25 kylin10.localdomain systemd[1]: Started Docker Application Con>
~
~
...skipping...
● docker.service - Docker Application Container EngineLoaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor pres>Active: active (running) since Sun 2025-10-19 20:25:25 CST; 2min 17s agoDocs: https://docs.docker.comMain PID: 11953 (dockerd)Tasks: 21Memory: 70.5MCGroup: /system.slice/docker.service├─11953 /usr/bin/dockerd --live-restore└─11960 containerd --config /var/run/docker/containerd/containerd.to>10月 19 20:25:24 kylin10.localdomain dockerd[11960]: time="2025-10-19T20:25:24.>
10月 19 20:25:24 kylin10.localdomain dockerd[11953]: time="2025-10-19T20:25:24.>
10月 19 20:25:24 kylin10.localdomain dockerd[11953]: time="2025-10-19T20:25:24.>
10月 19 20:25:24 kylin10.localdomain dockerd[11953]: time="2025-10-19T20:25:24.>
10月 19 20:25:24 kylin10.localdomain dockerd[11953]: time="2025-10-19T20:25:24.>
10月 19 20:25:24 kylin10.localdomain dockerd[11953]: time="2025-10-19T20:25:24.>
10月 19 20:25:25 kylin10.localdomain dockerd[11953]: time="2025-10-19T20:25:25.>
10月 19 20:25:25 kylin10.localdomain dockerd[11953]: time="2025-10-19T20:25:25.>
10月 19 20:25:25 kylin10.localdomain dockerd[11953]: time="2025-10-19T20:25:25.>
10月 19 20:25:25 kylin10.localdomain systemd[1]: Started Docker Application Con>
~
~[root@kylin10 yum.repos.d]# docker info
Containers: 0Running: 0Paused: 0Stopped: 0
Images: 0
Server Version: 18.09.0
Storage Driver: overlay2Backing Filesystem: xfsSupports d_type: trueNative Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Hugetlb Pagesize: 2MB, 1GB (default is 2MB)
Plugins:Volume: localNetwork: bridge host macvlan null overlayLog: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version:
runc version: N/A
init version: N/A (expected: )
Security Options:seccompProfile: default
Kernel Version: 4.19.90-89.26.v2401.ky10.x86_64
Operating System: Kylin Linux Advanced Server V10 (Halberd)
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 3.136GiB
Name: kylin10.localdomain
ID: R5B7:OBPJ:NOUH:MRIW:RM34:4D7N:ILCF:Q3C2:DE7A:MZOY:YXJI:SXHL
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:127.0.0.0/8
Live Restore Enabled: true[root@kylin10 yum.repos.d]#
三、配置国内镜像加速器
直接从 Docker Hub 拉取镜像,速度慢且不稳定是常态。配置国内镜像加速器是大幅提升体验的关键。国内有很多镜像站都提供了Docker 镜像加速。
1.创建或修改 Docker Daemon 配置文件
Docker 的配置主要通过 /etc/docker/daemon.json文件管理。如果文件不存在,直接创建它。
[root@kylin10 yum.repos.d]# vim /etc/docker/daemon.json
在文件中输入以下内容,将 https://your-mirror-address替换为你选择的一个或多个加速器地址。
{"registry-mirrors": ["http://docker.m.daocloud.io","http://mirror.ccs.tencentyun.com","http://docker.rainbond.cc"]
}
①可以配置多个镜像源,Docker 会按顺序尝试拉取。
②使用 // 后可以写注释说明。
③重要: JSON 格式要求严格,注意逗号分隔和引号使用。
[root@kylin10 yum.repos.d]# vim /etc/docker/daemon.json
[root@kylin10 yum.repos.d]# cat /etc/docker/daemon.json
{"registry-mirrors": ["http://docker.m.daocloud.io","http://mirror.ccs.tencentyun.com","http://docker.rainbond.cc"]
}
3.保存退出,并重新加载配置 & 重启 Docker 修改配置后,需要让 Docker 守护进程重新加载配置并重启才能生效。
systemctl daemon-reload # 重载 systemd 管理的所有 unit 文件
systemctl restart docker # 重启 Docker 服务
4.验证加速器是否生效 运行以下命令:
docker info
[root@kylin10 yum.repos.d]# docker info
Containers: 0Running: 0Paused: 0Stopped: 0
Images: 0
Server Version: 18.09.0
Storage Driver: overlay2Backing Filesystem: xfsSupports d_type: trueNative Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Hugetlb Pagesize: 2MB, 1GB (default is 2MB)
Plugins:Volume: localNetwork: bridge host macvlan null overlayLog: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version:
runc version: N/A
init version: N/A (expected: )
Security Options:seccompProfile: default
Kernel Version: 4.19.90-89.26.v2401.ky10.x86_64
Operating System: Kylin Linux Advanced Server V10 (Halberd)
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 3.136GiB
Name: kylin10.localdomain
ID: R5B7:OBPJ:NOUH:MRIW:RM34:4D7N:ILCF:Q3C2:DE7A:MZOY:YXJI:SXHL
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:127.0.0.0/8
Registry Mirrors:http://docker.m.daocloud.io/http://mirror.ccs.tencentyun.com/http://docker.rainbond.cc/
Live Restore Enabled: true[root@kylin10 yum.repos.d]#
[root@kylin10 yum.repos.d]# docker-compose -v
docker-compose version 1.22.0, build f46880f
[root@kylin10 yum.repos.d]#
四、实战测试
现在,让我们拉取一个稍大点的镜像(如 Ubuntu)来感受一下加速的效果:
docker pull ubuntu:22.04
安装dify
克隆 Dify 源代码至本地环境:
[root@kylin10 wdify]# git clone https://github.com/langgenius/dify.git
正克隆到 'dify'...
remote: Enumerating objects: 242515, done.
remote: Counting objects: 100% (555/555), done.
remote: Compressing objects: 100% (314/314), done.
remote: Total 242515 (delta 361), reused 241 (delta 241), pack-reused 241960 (from 3)
接收对象中: 100% (242515/242515), 135.01 MiB | 5.26 MiB/s, 完成.
处理 delta 中: 100% (176712/176712), 完成.
[root@kylin10 wdify]# ls
dify
[root@kylin10 wdify]# cd dify
[root@kylin10 dify]# ls
AGENTS.md AUTHORS CONTRIBUTING.md docker images Makefile scripts web
api CLAUDE.md dev docs LICENSE README.md sdks
[root@kylin10 dify]#
启动Dify 1. 进入dify的Docker目录:
cd dify/docker
复制docker目录下环境配置文件:
cp .env.example .env