第一步你需要去docker官网下载docker文件,下载完成后上传到服务器进行解压
https://download.docker.com/linux/static/stable

解压文件
tar -xzvf docker-*.tgz
将解压出的 docker 目录下的所有文件复制到 /usr/bin 目录,这样系统就能直接调用 docker 命令
cp docker/* /usr/bin/
然后可以把原来的docker给删除了
rm -r docker
rm -r docker-*.tgz
使用文本编辑器创建 /etc/systemd/system/docker.service 文件
vi /etc/systemd/system/docker.service
将以下内容完整地粘贴到文件中。这是Docker官方推荐的、最通用的服务配置
[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
TimeoutSec=0
RestartSec=2
Restart=always
StartLimitBurst=3
StartLimitInterval=60s
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
TasksMax=infinity
Delegate=yes
KillMode=process
OOMScoreAdjust=-500
[Install]
WantedBy=multi-user.target
文件保存后,按顺序执行以下命令
# 1. 让 systemd 重新读取所有服务配置文件,使新创建的 docker.service 生效
systemctl daemon-reload
# 2. 立即启动 Docker 服务
systemctl start docker
# 3. 设置 Docker 服务在系统启动时自动运行
systemctl enable docker
上面步骤已经安装完docker了 然后就是镜像问题了 你先去找一台有网络的服务器 把镜像下载下来 我这里以 redis mysql nginx jre 四个镜像为例子
docker pull eclipse-temurin:21-jre
docker pull mysql:9.7
docker pull redis:8.2.7
docker pull nginx:1.30.2
镜像下载下来以后 需要执行命令把这些镜像打成包 然后下载到你自己电脑上
docker save -o mysql-9.7.tar mysql:9.7
docker save -o jre-21.tar eclipse-temurin:21-jre
docker save -o nginx-1302.tar nginx:1.30.2
docker save -o redis-827.tar redis:8.2.7
最后一步 你需要把mysql-9.7.tar jre-21.tar nginx-1302.tar redis-827.tar 这些包上传到你没有网络的服务器上 然后执行命令安装镜像
docker load -i mysql-9.7.tar
docker load -i jre-21.tar
docker load -i nginx-1302.tar
docker load -i redis-827.tar
上面的做完后你可以把这些文件都删了
rm -rf jre-21.tar mysql-9.7.tar nginx-1302.tar redis-827.tar
最后一步下载docker-compose工具
https://github.com/docker/compose/releases

docker-compose下载完成后 上传到你没有网络的服务器,设置存放目录并设置执行权限
mv /tmp/docker-compose-linux-x86_64 /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
验证是否安装成功
docker-compose --version
