将一个 Docker 容器移植到其他机器

要将一个 Docker 容器移植到其他机器,可以通过以下几种方式实现,取决于你是想移植 镜像 还是 容器的运行状态和数据


🚀 方案 1:导出容器/镜像并在目标机器导入

适合情况:想要将当前容器的运行状态(含数据)迁移过去,或目标机器无法访问原镜像仓库。

步骤:

✅ 方法 A:导出容器(包括文件系统)
  1. 导出容器为 tar 文件(假设容器名叫 mycontainer):
   docker export mycontainer > mycontainer.tar
  1. 复制文件到目标机器(可以用 scprsync、U盘等方式):
   scp mycontainer.tar user@target_host:/path/
  1. 在目标机器上导入为镜像
   docker import /path/mycontainer.tar mycontainer-image
  1. 基于新镜像运行容器
   docker run -it mycontainer-image

✅ 方法 B:导出镜像(推荐,如果只是想转移镜像)
  1. 找到容器使用的镜像:
   docker ps --filter name=mycontainer
  1. 导出镜像为 tar 文件:
   docker save -o myimage.tar imagename:tag
  1. 拷贝到目标机器并加载:
   docker load -i myimage.tar
  1. 启动新容器:
   docker run -it imagename:tag

🧊 方案 2:使用 Docker Compose + Volume 备份

适合情况:有多个容器组成服务(比如用 docker-compose 管理),并希望数据也迁移过去。

  1. 导出 docker-compose.yml 文件和相关配置
  2. 备份挂载的卷数据
  • 找出 volume 挂载位置(或者直接使用 docker volume lsdocker volume inspect)。
  • 打包备份卷目录。
  1. 在目标机器上还原卷数据并启动 Compose
   docker-compose up -d

📝 注意事项

  • docker export/import 会丢失容器的元数据(比如端口映射、环境变量)。
  • 使用 docker save/load 能完整保留镜像内容(推荐)。
  • 如果容器依赖挂载卷,请手动同步对应卷的数据。

容器 + 数据 还是只是 镜像,都可以保存,移植

No Comments

Send Comment Edit Comment


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
Previous
Next