当前位置: 首页 > news >正文

离线环境下运行 Docker 容器编排指南

在生产环境或内网部署场景中,常常面临无法联网的限制。在没有网络连接的环境中,我们依然可以使用 Docker Compose 来启动多个容器服务。本文将手把手教你如何准备镜像、导入资源,并成功运行容器编排。


🧰 一、准备工作:联网环境中完成资源采集

1. 拉取所需镜像

在有网络的电脑上,进入你的项目目录,执行:

docker compose pull

这一步会下载 docker-compose.yml 中定义的所有镜像。


2. 导出镜像文件

使用 docker save 命令将镜像保存为 .tar 文件:

docker save 镜像名:标签 -o 镜像名.tar
# 示例:
docker save nginx:1.25 -o nginx.tar
docker save redis:7.2 -o redis.tar

你可以将多个镜像打包一起传输,也可以分别保存。


3. 打包项目文件

确保以下文件一并打包带到离线环境:

  • docker-compose.yml
  • .env(如果有)
  • 所需配置文件、静态资源、初始化脚本等

📦 二、离线环境中导入与部署

1. 安装 Docker 和 Docker Compose

确保离线环境已安装:

  • Docker 引擎
  • Docker Compose 插件(推荐使用新版 CLI 插件)

你可以在联网环境下载 .deb.rpm 安装包,拷贝到离线机器安装。


2. 导入镜像

.tar 文件拷贝到离线机器,执行:

docker load -i nginx.tar
docker load -i redis.tar

验证镜像是否导入成功:

docker images

3. 创建必要的网络与卷(如有)

如果 Compose 文件中引用了自定义网络或命名卷,需提前创建:

docker network create my_network
docker volume create my_volume

🚀 三、启动容器编排

进入项目目录,执行:

docker compose up -d

这将以后台模式启动所有服务。查看运行状态:

docker compose ps

🧪 四、常见问题与解决方案

错误提示原因解决方法
pull access denied镜像未导入使用 docker load 导入 .tar 文件
unknown flag: -dCompose 版本不兼容使用新版 Docker Compose 插件
network not found引用了未创建的网络手动创建网络:docker network create
service exited with code 1容器启动失败查看日志:docker logs 容器名

📌 附加建议

  • ✅ 使用固定版本号的镜像,避免未来变动。
  • ✅ 在 Compose 文件中使用本地镜像名,确保一致性。
  • ✅ 使用 docker compose config 检查配置是否展开正确。
  • ✅ 可将镜像集中打包为一个压缩文件,便于传输。

📁 示例项目结构

my-project/
├── docker-compose.yml
├── .env
├── nginx/
│   └── default.conf
├── redis/
│   └── redis.conf
└── 镜像文件/├── nginx.tar└── redis.tar
http://www.dtcms.com/a/515300.html

相关文章:

  • mapbox进阶,地图添加渐变背景色
  • Tornado + Motor 微服务架构(Docker + 测试 + Kubernetes)
  • YLOLv4
  • 实验室入门——ubuntu20.04安装ros和ros2全流程
  • uTools 最新版优化macOS 26 高 GPU 占用问题
  • wordpress如何建站拓普建站推广
  • 建筑智库免费网站商城网站开发报
  • 从埋点到用户行为分析:ClkLog 如何帮助企业读懂用户
  • 【Q-dir】QDir_x64窗口配合Mouselnc实现上一步
  • 手机网站备案密码找回的方法枣庄专业做网站
  • Oracle Database 19c 服务端(19.3)下载与安装
  • 如何使用 vxe-table 实现全键盘操作,按键切换复选框单选框的选中状态
  • AI IDE 编辑器产品销售策略:从功能宣讲到赋能用户盈利的范式转变[特殊字符]
  • K8S知识点--Node和NameSpace
  • 【开发AI】Windows安装和使用Milvus的保姆级教程
  • 【完整源码+数据集+部署教程】【零售和消费品&存货】食品分类检测系统源码&数据集全套:改进yolo11-RepNCSPELAN_CAA
  • 【Qt】文件操作/事件--mainwindow做编辑器
  • 高频低客单价产品怎么做私域?餐饮/生鲜/零售用社群运营提效37%的私域代运营方案
  • 石家庄大型网站建设做it题的网站
  • 网站建设 要维护么重庆做汉堡的餐饮公司网站
  • leetcode单链表反转
  • 【英语】listicles 是什么意思?
  • JSA变成类似vba环境给第三方软件集成IDE功能,脚本功能
  • 做外单网站亚马逊wordpress菜单分开
  • [ Java 反射机制 ]
  • 元宇宙与医疗健康的深度融合:重构诊疗、培训与健康管理新生态
  • 《算法闯关指南:优选算法--二分查找》--21.山峰数组的的峰顶索引,22.寻找峰值
  • h5游戏免费下载:弗莱迪的物理实验
  • C++ 学习 —— 03 - 类
  • 元宇宙与金融的深度融合:重构服务生态与价值边界