一、准备工作
1. 下载安装包(需在有网络的机器操作):
wget https://download.docker.com/linux/static/stable/x86_64/docker-24.0.6.tgz
- Docker Compose:下载最新二进制文件
wget https://github.com/docker/compose/releases/download/v2.27.0/docker-compose-linux-x86_64
2. 传输到目标机器
- 通过 USB、内网传输工具等将文件拷贝至离线服务器的 /opt/docker-offline 目录。
二、安装 Docker
1. 解压并安装
tar -zxvf docker-24.0.6.tgz
cp docker/* /usr/bin/
2. 配置 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
3. 启动服务
systemctl daemon-reload
systemctl start docker
systemctl enable docker
docker --version
三、安装 Docker Compose
1. 安装二进制文件
mv docker-compose-linux-x86_64 /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
docker-compose --version
2. 创建软链接(可选)
ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
四、进阶配置
1. 配置镜像加速(可选)
vim /etc/docker/daemon.json
{"registry-mirrors": ["https://<your-mirror-id>.mirror.aliyuncs.com"]
}
systemctl restart docker
2. 存储目录修改(可选)
vim /etc/docker/daemon.json
{"data-root": "/opt/docker-data"
}
五、常见问题解决
问题现象 | 解决方案 |
---|
docker: command not found | 检查 /usr/bin/docker 是否存在 |
Failed to start docker | 查看日志 journalctl -u docker.service |
Docker Compose 命令失效 | 重新安装二进制文件并赋予权限 |
六、验证安装
docker run hello-world
七、卸载方法
systemctl stop docker
systemctl disable docker
rm -rf /usr/bin/docker*
rm -f /etc/systemd/system/docker.service
rm -rf /var/lib/docker
八、离线镜像导入
1. 在有网络的机器导出镜像:
docker pull nginx:alpine
docker save -o nginx-alpine.tar nginx:alpine
2. 离线机器导入:
docker load -i nginx-alpine.tar