离线环境搭建docker的核心是“提前下载、按需传输、手动安装”,需严格匹配系统版本与架构,准备rpm/deb包或静态二进制文件,配置systemd服务并验证运行状态。

离线环境搭建 Docker 的核心是“提前下载、按需传输、手动安装”,不依赖网络源,关键在准备充分、步骤清晰。
确认系统基础条件
安装前务必验证目标服务器状态:
- 操作系统版本(如 CentOS 7.9、Ubuntu 22.04 Jammy、openEuler 22.03)和架构(x86_64 或 arm64)必须明确,后续所有包都需严格匹配
- 内核版本 ≥ 3.10(推荐 ≥ 4.18),运行 uname -r 查看
- 确保 iptables、libseccomp2、pigz 等基础依赖已存在;若缺失,需一并下载对应版本的离线包
- 时间同步必须完成(建议部署内网 NTP 服务),否则证书类操作易失败
准备离线安装包
在有网络的跳板机上操作,按系统类型选择方式:
- CentOS/RHEL 类:用 yum install --downloadonly 下载完整依赖链,包含 docker-ce、docker-ce-cli、containerd.io 及其 rpm 依赖(如 libseccomp、fuse-overlayfs)
- Ubuntu/Debian 类:用 apt download 或 apt-offline 获取所有 .deb 包,注意包含 docker-ce、containerd.io、docker-ce-cli 及其依赖(如 libseccomp2、iptables)
- 通用二进制方式(推荐跨平台):从 Docker 官方或阿里云镜像站下载 docker-xx.x.x.tgz(如 28.0.0 或 28.3.0),解压后只有静态二进制文件,无系统依赖,适合 CentOS 7/8、Ubuntu、openEuler、ARM 环境
执行安装与服务配置
将包传入离线机后,分两类操作:
- rpm/deb 包安装:按依赖顺序执行 rpm -ivh *.rpm 或 dpkg -i *.deb;若提示缺依赖,把对应依赖包补上再重试;CentOS 建议加 --nodeps --force 仅限测试环境,生产环境务必补全依赖
-
二进制安装(更稳妥):
• 解压:tar -xzf docker-28.3.0.tgz
• 复制命令:sudo cp docker/* /usr/bin/
• 创建 systemd 服务文件(/etc/systemd/system/docker.service),内容含 ExecStart=/usr/bin/dockerd、After=network.target 等关键项
• 启动:sudo systemctl daemon-reload && sudo systemctl enable docker && sudo systemctl start docker
验证与基础加固
安装完成后立即检查:
- 运行 docker version 和 docker info,确认 client/server 均正常,Storage Driver 显示 overlay2
- 修改 /etc/docker/daemon.json 设置常用参数,例如:
• "data-root": "/data/docker"(避免占满系统盘)
• "log-driver": "json-file", "log-opts": {"max-size": "100m", "max-file": "3"}
• "insecure-registries": ["192.168.10.100:5000"](如需对接私有仓库) - 添加当前用户到 docker 组:sudo groupadd docker && sudo usermod -aG docker $USER,然后重新登录生效











