Skip to content

Linux 内网离线安装 Docker 及 docker-compose

一、准备离线文件

在可联网的电脑上下载以下文件,再拷贝到内网服务器。

  1. Docker 静态二进制包
    地址:https://download.docker.com/linux/static/stable/
    按架构选择(通常 x86_64),下载例如 docker-29.1.3.tgz

  2. docker-compose 二进制文件
    地址(示例 v2.5.0):https://github.com/docker/compose/releases/download/v2.5.0/docker-compose-linux-x86_64

二、在服务器上创建配置文件和脚本

将上述文件放入同一目录(如 ~/docker),在该目录下创建以下三个文件。

1. docker.service(系统服务)

ini
[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
LimitCORE=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
[Install]
WantedBy=multi-user.target

2. install.sh(一键安装脚本)

bash

#!/bin/sh
echo '解压tar包......'
tar -xvf $1 --overwrite
echo '将docker目录移到/usr/bin目录下.....'
cp docker/* /usr/bin/
echo '将docker.service 移到/etc/systemd/system/ 目录.....'
cp docker.service /etc/systemd/system/
echo '添加文件权限.....'
chmod +x /etc/systemd/system/docker.service
echo '重新加载配置文件.....'
systemctl daemon-reload
echo '启动docker.....'
systemctl start docker
echo '设置开机自启.....'
systemctl enable docker.service
echo 'docker安装成功.....'
docker -v

进入文件所在目录,执行拷贝+重命名

sudo mv docker-compose-linux-x86_64 /usr/local/bin/docker-compose

三、执行安装

bash
chmod +x ./install.sh
bash
sudo ./install.sh docker-29.1.3.tgz