马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
不是每一台机器都能连着公网上外网装 Docker:有的机房防火墙只放行几个端口,有的出于安全干脆断外网,还有的生产环境为了稳定不想让 Docker 跟着在线源漂移。这些场景就得离线装。本文记录把 Docker 静态包拷到内网服务器、写 systemd 单元、拉起服务的完整做法,顺带给出在线安装的对照命令。
什么情况下需要离线安装
- 网络限制:部署环境装了防火墙,到不了 Docker 官方仓库,在线装直接卡住。
- 安全考量:有些环境不允许直连外部网络,所有软件都得走离线分发。
- 稳定性:生产环境希望 Docker 版本跟系统其他组件严格对得上,避免在线更新带来的未知变化。
一、下载离线安装包
Docker 全量离线包的路径可以去找第三方镜像站,也可以使用官方静态二进制目录:Linux 稳定版地址是在 https://download.docker.com/linux/static/stable/ 下按平台挑。
二、解压
把 docker-20.10.20.tgz 传到服务器上(以这个版本为例),解压:
tar -zxvf docker-20.10.20.tgz
三、拷到系统目录
把解压出来的 docker 目录下的全部文件复制到 /usr/bin 下,因为 /usr/bin 已经在环境变量里,这样 docker 命令随时可用:
mv docker/* /usr/bin/
四、写 systemd 配置
vim /etc/systemd/system/docker.service
内容如下:
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
[Service]
Type=notify
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
[Install]
WantedBy=multi-user.target
五、赋权、自启、启动
chmod +x /etc/systemd/system/docker.service
systemctl daemon-reload
systemctl enable docker.service
systemctl start docker
六、验证
docker -v
输出类似 Docker version 20.10.20, build 370c289,说明离线安装成功。有镜像包的话可以再 docker load 进去跑一个容器验证。
七、对照:在线安装
如果目标机器能联网,一条命令就完事:
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
也可以用国内镜像站的一键安装脚本:
curl -sSL https://get.daocloud.io/docker | sh
八、注意
具体安装步骤会随 Linux 发行版和版本有所不同,离线部署前最好对照目标系统的文档或社区说明,确认这套静态包与内核、systemd 版本兼容。
qidao123.com企服评测-应用市场 编辑提示 |