以前,群晖系统中想转移docker位置,无赖,只能卸掉重新安装设置。。。

不过,经过今天尝试,终于,实现docker中的镜像和内容全部备份,并且还原!

image

下面就记录下正确的方法:

DSM版本:6.1.3-15152  Update 7

docker套件:运行

容器:是否运行无所谓

备份:

1.先备份容器。

在docker里面进入容器,选择一个容器。点击设置→导出。

image

按下图方式选择后,导出到本地位置。

image

导出后会得到一个和容器一样名字的JSON文件。此时容器备份完成。

image

2.再备份镜像。

备份镜像需要开启SSH,请确保已开启。

使用PuTTY登陆。

image

并切换到root模式。切换方法,输入:sudo -i,回车后,再输入一次密码。

image

注意:冒号后面由 /$ 变成 ~# ,就说明切换成功。

输入:docker images,查看现在有的镜像。我这里用了一个ubuntu镜像作为例子。

image

接着输入:docker save –o <需要保存的路径.tar> <镜像名称(REPOSITORY)>,回车,注意之间空格。本例中镜像比较大,所以需要等一会。

image

image

image

这里备份完成。可以把这两种文件拷贝至其它主机。

还原:

1.先还原镜像。

仍然需要用到SSH。

root模式下输入:docker load –i <还原镜像位置文件.tar>

image

image

还原镜像完成,使用docker images查看一下。

image

image

这里,镜像还原完成。

2.再还原容器。

选择容器,点击设置,选择导入。

image

选择当时生成的JSON文件

image

此时可以修改容器名称,我这里就保持当时名字不变了。

image

确定后,容器导入完成,并且设置和导出一致。然后运行容器即可。

image

这里,容器还原完成!