Docker 离线部署

一、针对离线服务器安装Docker

1、下载Docker安装包:docker-29.4.1.tgz (版本自己看着整)

下载链接:https://download.docker.com/linux/static/stable/x86_64/

2、下载Docker Compose二进制文件 (要对应Docker版本)

下载链接:Releases · docker/compose

3、配置docker.service文件

a(可选):复制以下内容到docker.service​内,并修改--data-root="/{your-path}/docker"​,指定docker生成目录(路径后的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 --default-ulimit nofile=65535:65535 --data-root="/{your-path}/docker"
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

b(可选):直接官网下载文件,上传到服务器

下载链接:raw.githubusercontent.com/moby/moby/master/contrib/init/systemd/docker.service

4 、 移动docker.service到 /usr/lib/systemd/system/ 目录下,将docker作为系统进程进行管理

5、 将下载好的Docker compose 二进制文件赋予可执行权限、改名、并移动到​/usr/bin​目录下

复制代码
# 赋予可执行权限
chmod +x docker-compose-linux-XXXX
# 更名为 docker-compose
mv docker-compose-linux-XXXX docker-compose
# 移动到全局命令目录下
mv docker-compose /usr/bin

6、解压Docker 压缩包,并将解压出来的包移动或复制到 /usr/bin​ 目录下

复制代码
# 解压
tar -zxf docker-XX.XX.XX.tgz
# 复制
cp docker/* /usr/bin

7、启动服务、设置开机自启、查看Docker、Docker compose 版本

复制代码
# 设置docker自启动
systemctl enable docker.service 
# 启动docker服务
systemctl start docker.service 
# 查询docker状态
systemctl status docker.service

# 查看docker版本
docker -v
# 查看docker-compose版本
docker-compose -v

二、针对镜像获取问题

1、在联网服务器上下载对应镜像,并导出,导入至离线服务器

复制代码
# 拉取镜像
docker pull images:v

# 导出镜像至指定位置
docker save -o 【保存路径/文件名.tar】 【镜像名:版本】

# 导入指定位置的镜像
docker load -i 【镜像文件路径.tar】

三、参考

1、离线安装 docker & docker-compose - isOllie - 博客园

2、傻豆包

相关推荐
架构源启5 小时前
文档接入与智能解析:基于 Spring AI 1.1.x 的多格式解析、版面理解与结构化抽取
java·人工智能·spring
大模型码小白9 小时前
JAVA 集合框架进阶:List 与 Set 的深度解析与实战
java·开发语言·人工智能·windows·语言模型·list·ai编程
名字还没想好☜10 小时前
Go 的 time.Ticker 陷阱:定时任务里被忽略的内存泄漏与正确关闭
java·数据库·golang·go·定时器
关关长语10 小时前
Wsl解决MySQL容器跨域权限问题
mysql·docker·容器
音符犹如代码10 小时前
后端视角看 EventBus:发布订阅总线的原理、场景与用法
java·spring boot·guava
前端炒粉10 小时前
手撕小汇总
java·前端·javascript
唐青枫11 小时前
Java Kafka 实战指南:从 Topic、分区到 Spring Boot 可靠消息处理
java
脱胎换骨-军哥11 小时前
C++零成本抽象理论深度拆解:现代C++如何在不牺牲性能的前提下提供高级语法封装
java·开发语言·c++
我是唐青枫12 小时前
Java Netty 实战指南:从 NIO 线程模型到 TCP 编解码和心跳机制
java·tcp/ip·nio
小白说大模型12 小时前
从向量嵌入到复杂 Agent:LLM、LangChain、LangGraph 完整科普
java·开发语言·人工智能·gpt·深度学习·langchain