将本地docker容器迁移到服务端(导出与导入)

方法1: 容器的导出导入: export/import 

 

方法2: 镜像的导出与导入: save/load

 

而将当前运行的容器转为新镜像:

更新镜像

更新镜像之前,我们需要使用镜像来创建一个容器。

runoob@runoob:~$ docker run -t -i ubuntu:15.10 /bin/bash
root@e218edb10161:/# 

在运行的容器内使用 apt-get update 命令进行更新。

在完成操作之后,输入 exit 命令来退出这个容器。

此时 ID 为 e218edb10161 的容器,是按我们的需求更改的容器。我们可以通过命令 docker commit 来提交容器副本。

runoob@runoob:~$ docker commit -m="has update" -a="runoob" e218edb10161 runoob/ubuntu:v2
sha256:70bf1840fd7c0d2d8ef0a42a817eb29f854c1af8f7c59fc03ac7bdee9545aff8

各个参数说明:

  • -m: 提交的描述信息

  • -a: 指定镜像作者

  • e218edb10161:容器 ID

  • runoob/ubuntu:v2: 指定要创建的目标镜像名

我们可以使用 docker images 命令来查看我们的新镜像 runoob/ubuntu:v2

===================

实战:

1/在服务器A中配置好seafile compose, 然后逐个容器commit一份为镜像:

[root@docker seafile]# docker images
REPOSITORY              TAG                 IMAGE ID            CREATED             SIZE
mariadb                 10.1                ad20783a626b        2 weeks ago         353MB
seafileltd/seafile-mc   latest              c21cf1a7f656        2 weeks ago         891MB
memcached               1.5.6               855fdf342eda        2 years ago         58.6MB
[root@docker seafile]# docker commit -a="rocklee" ^C
[root@docker seafile]# docker ps
CONTAINER ID        IMAGE                          COMMAND                  CREATED             STATUS              PORTS                                                                NAMES
4f4611dff95b        seafileltd/seafile-mc:latest   "/sbin/my_init -- /s…"   7 days ago          Up About an hour    0.0.0.0:80->80/tcp, 0.0.0.0:8000->8000/tcp, 0.0.0.0:8080->8080/tcp   seafile
016cc85bde71        memcached:1.5.6                "memcached -m 256"       7 days ago          Up About an hour    11211/tcp                                                            seafile-memcached
c6fd2e241026        mariadb:10.1                   "docker-entrypoint.s…"   7 days ago          Up About an hour    3306/tcp                                                             seafile-mysql
[root@docker seafile]# docker images^C
[root@docker seafile]# docker commit -a="rocklee" 4f4611dff95b rocklee/seafile:latest
sha256:026414ed5de460c09d1f840ed3f4e8661ee5bcb4a3c7256326df19c828a2c350
[root@docker seafile]# docker commit -a="rocklee" 016cc85bde71 rocklee/seafile-memcached:latest
sha256:4e1ac139fee754739fe939562eff7b5b856cadc3b65046b885c302ce1a4fa0d2
[root@docker seafile]# docker commit -a="rocklee" c6fd2e241026 rocklee/seafile-mysql:latest
sha256:5a5bb80bfdd6217ccc025fe4bb2d42a94dc1233a8f4b80d60588706c8690f93b
[root@docker seafile]# docker images
REPOSITORY                  TAG                 IMAGE ID            CREATED             SIZE
rocklee/seafile-mysql       latest              5a5bb80bfdd6        3 seconds ago       353MB
rocklee/seafile-memcached   latest              4e1ac139fee7        21 seconds ago      58.6MB
rocklee/seafile             latest              026414ed5de4        57 seconds ago      898MB
mariadb                     10.1                ad20783a626b        2 weeks ago         353MB
seafileltd/seafile-mc       latest              c21cf1a7f656        2 weeks ago         891MB
memcached                   1.5.6               855fdf342eda        2 years ago         58.6MB

2/将新镜像都打包一份

[root@docker seafile]# docker save -o backup.tar rocklee/seafile-mysql rocklee/seafile-memcached rocklee/seafile

 

把 yml和tar复制到另一服务器, 然后:

[root@docker2 seafile]# docker load -i backup.tar
3358360aedad: Loading layer [==================================================>]  58.44MB/58.44MB
067893074642: Loading layer [==================================================>]  338.4kB/338.4kB
b486405c84ac: Loading layer [==================================================>]  3.108MB/3.108MB
6ad4891bf395: Loading layer [==================================================>]  3.584kB/3.584kB
96b27293caca: Loading layer [==================================================>]  1.536kB/1.536kB
Loaded image: rocklee/seafile-memcached:latest
f49017d4d5ce: Loading layer [==================================================>]  85.96MB/85.96MB
8f2b771487e9: Loading layer [==================================================>]  15.87kB/15.87kB
ccd4d61916aa: Loading layer [==================================================>]  10.24kB/10.24kB
c01d74f99de4: Loading layer [==================================================>]  5.632kB/5.632kB
268a067217b5: Loading layer [==================================================>]  3.072kB/3.072kB
831fff32e4f2: Loading layer [==================================================>]  65.02kB/65.02kB
c89f4fbc01f8: Loading layer [==================================================>]  103.4MB/103.4MB
0cdd64955da5: Loading layer [==================================================>]  51.54MB/51.54MB
de487e3eb232: Loading layer [==================================================>]  146.7MB/146.7MB
45138bb51c02: Loading layer [==================================================>]  5.398MB/5.398MB
6a8b8596550a: Loading layer [==================================================>]  57.66MB/57.66MB
b1787dc874ca: Loading layer [==================================================>]  260.8MB/260.8MB
7c182a4a7e39: Loading layer [==================================================>]  8.801MB/8.801MB
bd7b2a01b6b5: Loading layer [==================================================>]  29.39MB/29.39MB
de5bd3e6922f: Loading layer [==================================================>]  19.89MB/19.89MB
fdf16df56e88: Loading layer [==================================================>]  39.94kB/39.94kB
2940250cda7c: Loading layer [==================================================>]  7.168kB/7.168kB
1ba9f5e0943c: Loading layer [==================================================>]  4.608kB/4.608kB
d503934bb7be: Loading layer [==================================================>]   5.12kB/5.12kB
cc19cd3c5a97: Loading layer [==================================================>]  9.728kB/9.728kB
e6ea4e4c826e: Loading layer [==================================================>]   2.56kB/2.56kB
33593d52b173: Loading layer [==================================================>]  152.9MB/152.9MB
74f101c87223: Loading layer [==================================================>]   5.12kB/5.12kB
1adcdc0650db: Loading layer [==================================================>]  8.746MB/8.746MB
Loaded image: rocklee/seafile:latest
b7f7d2967507: Loading layer [==================================================>]  65.58MB/65.58MB
a6ebef4a95c3: Loading layer [==================================================>]  991.2kB/991.2kB
838a37a24627: Loading layer [==================================================>]  15.87kB/15.87kB
28ba7458d04b: Loading layer [==================================================>]  3.072kB/3.072kB
fadf5ecbe4d4: Loading layer [==================================================>]  402.9kB/402.9kB
8179bbf82947: Loading layer [==================================================>]  11.12MB/11.12MB
78452794b5bd: Loading layer [==================================================>]  3.886MB/3.886MB
e0b9a9a4c57f: Loading layer [==================================================>]  1.536kB/1.536kB
2df470f82b36: Loading layer [==================================================>]  4.695MB/4.695MB
d0abe7e5ebab: Loading layer [==================================================>]  8.704kB/8.704kB
79b956f84d51: Loading layer [==================================================>]   5.12kB/5.12kB
6bd92a51eab7: Loading layer [==================================================>]  272.4MB/272.4MB
a194bb2208ea: Loading layer [==================================================>]  15.36kB/15.36kB
01886de02354: Loading layer [==================================================>]  1.536kB/1.536kB
8eaf24b3caff: Loading layer [==================================================>]  3.584kB/3.584kB

[root@docker2 seafile]# docker images
REPOSITORY                  TAG                 IMAGE ID            CREATED             SIZE
rocklee/seafile-mysql       latest              5a5bb80bfdd6        16 minutes ago      353MB
rocklee/seafile-memcached   latest              4e1ac139fee7        16 minutes ago      58.6MB
rocklee/seafile             latest              026414ed5de4        17 minutes ago      898MB

再启动服务

[root@docker2 seafile]# docker-compose up -d
Creating network "seafile_seafile-net" with the default driver
Creating seafile-mysql     ... done
Creating seafile-memcached ... done
Creating seafile           ... done

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值