Docker离线部署无网络环境安装

什么时候需要离线安装Docker?

办公内网、金融机房或生产环境通常不允许服务器直接连接外网。
此时如果要用Docker管理容器,就必须提前准备好安装包,通过U盘或跳板机传输到目标机器。
本文以 CentOS 7 为例,操作同样适用于 Red Hat 系发行版,步骤可重复执行。

第一步:在能上网的电脑上准备离线包

你需要一台有网络的电脑(可以是你的笔记本),先安装Docker然后导出所有依赖的rpm包。
注意Docker版本和操作系统架构必须和目标服务器一致。

# 安装yum-utils(提供yumdownloader命令)
sudo yum install -y yum-utils createrepo

# 创建临时目录存放rpm包
mkdir docker-offline && cd docker-offline

# 下载docker-ce及其依赖(不安装,只下载)
yumdownloader --resolve docker-ce docker-ce-cli containerd.io

下载完成后,目录里会多出几十个.rpm文件。
把它们打包成一个压缩包:

tar czf docker-offline-pkg.tar.gz *.rpm
特别注意:如果目标服务器是CentOS 7,请不要用较新的Docker版本,推荐使用 20.10.x,兼容性最稳定。

第二步:将离线包传输到无网络服务器

把生成的docker-offline-pkg.tar.gz通过U盘、网络共享或内部文件传输工具拷贝到目标服务器。
假设存放在/root/目录下。

# 目标服务器上解压
tar xzf /root/docker-offline-pkg.tar.gz -C /root/docker-offline

第三步:离线安装Docker

进入存放rpm的目录,使用rpm命令将所有包安装到系统。
注意安装顺序:先装containerd.io,再装docker-ce-cli,最后装docker-ce
但最简单的方式是直接用rpm -ivh一条命令安装所有:

cd /root/docker-offline
sudo rpm -ivh *.rpm --nodeps 2>/dev/null || sudo rpm -ivh *.rpm

--nodeps会跳过依赖检查,因为所有依赖已经包含在目录中。
如果出现重复包或版本冲突,可以使用rpm -Uvh *.rpm升级安装。

安装完成后,启动Docker服务并设置开机自启:

sudo systemctl start docker
sudo systemctl enable docker

第四步:验证Docker能否正常工作

运行官方测试容器,确保能拉取镜像(如果无网络,这里会失败,但可以验证引擎本身):

sudo docker version
sudo docker info

如果能看到客户端和服务端版本号,说明Docker已正确安装。
由于无网络,我们无法直接从仓库拉取镜像,所以需要提前准备好私有镜像或从有网络的机器导出镜像包。

避坑指南与高频问题

Q1:安装时提示缺少依赖 libcgroup? CentOS 7 默认没有该包。
解决方法:从有网络的机器上执行 yumdownloader --resolve libcgroup 将依赖一并下载,加入离线包文件夹后重新安装。

Q2:docker-ce 版本和内核不匹配? 使用 uname -r 查看内核版本,建议搭配 3.10 以上内核。
如果内核太旧(如 2.6),需要先升级内核,也可以考虑使用旧版 Docker 18.09。

Q3:
如何离线加载已有镜像?
在有网络的电脑上执行 docker save -o myimage.tar myimage:
tag

将 tar 文件传输到目标服务器,
然后执行 docker load -i myimage.tar

Q4:启动 docker 后报错 iptables failed? 关闭系统防火墙或添加 Docker 规则:systemctl stop firewalld && systemctl disable firewalld
生产环境请按安全策略放行。

Q5:
rpm 安装顺序混乱导致失败?
建议先用 rpm -qpl *.rpm | grep -E "(containerd|cli|ce)" 确定版本顺序,
手动逐个安装。

最后的小建议

如果你正在处理 Docker离线部署无网络环境安装,建议先在自己笔记本上完整走一遍流程,确认所有依赖包齐全,然后按本文步骤在目标服务器上还原。
遇到问题优先检查包版本和内核兼容性。
离线环境虽然限制多,但只要准备充分,一样能稳定运行 Docker 服务。

分享到:
上一篇
Docker容器网络互通配置:从零开始完整教程
下一篇
K8s零基础集群搭建实战:从三台CentOS开始
1
系统公告

高考专属福利来袭|凭准考证免费领香港 CN2 云服务器

值高考落幕之际,泽御云开启考生专属回馈 + 产品限时特惠双重活动,助力学子暑期学习建站 高考 考生专属福利 全体应届高考生,凭高考准考证即可免费申领【香港 CN2 轻量云服务器,4 核 4G AMD 处理器】,免费使用周期 30 天,可用于搭建个人站点、编程实操、技术实训,祝各位考生金榜题名,前程似锦! 泽御云资质齐全合规自营机房,线路覆盖香港 CN2、国内 BGP、内蒙电信、美国精品线路,售后全天候技术支持。 官方网站:www.zeyuyun.com,活动限时有效,优惠逾期不再保留。
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意