群辉docker迁移磁盘

2020-02-05 16:00:53 19点赞 134收藏 32评论

针对我们的群辉来讲,更换磁盘、重装系统很多数据想恢复,今天我们介绍下如何恢复我们的docker跑的各种程序。

介绍

docker本身为了方便部署,对程序以及数据和配置进行打包,如果保留着docker的文件那么恢复是很简单的事情。

举个栗子:

Microsoft Word大家都使用过,通过它我们创建了个“设计.docx"文件。 那么"设计.docx"文件就是数据。只要数据没丢,即使Word重装甚至更换系统、更换电脑硬件都没有影响的。

Microsoft Word相当于我们的docker套件(docker程序本身);那么”设计.docx“相当于我们的”镜像、容器、网络等“

它们在哪

首先我们的docker套件,通过套件中心可以查看:

群辉docker迁移磁盘

比如我的安装到了volume3上,也就是“存储空间3”。那么在系统目录结构里面就是“/volume3/@appstore/Docker”目录。

@appstore 是群辉安装套件的目录。群辉自身的一些目录喜欢用@符作为名称前缀。

一般在相同的volume下,我的就是"/volume3/@docker",在docker套件安装目录下,会有一个软链,指示了docker的数据目录的位置:

群辉docker迁移磁盘

docker的数据本身是root账户管理的,所以对其进行操作需要sudo获取临时root权限。

软链:截图中带箭头,软链类似windows里面的快捷方式。箭头后面表示软链的位置,这俩相当于一样的了。

如何迁移

docker套件的安装位置为了找到docker数据的目录,方便进行备份等。docker套件不需要过于关注,有问题卸载重装即可。

因为是@符开头的,所以通过群辉的界面不是很方便操作或者备份它,我一般通过ssh远程连接控制。

开启ssh,连接到服务器,之前我们也讲过, 可以看看我的历史文章。

如果我们要更换volume1磁盘,

1. 把/volume1/@docker拷贝到其他磁盘上

sudo mv /volume1/@docker /volume2 # mv 可以改成cp进行复制

2. 更换磁盘,创建存储空间、恢复系统。

3. 将@docker目录移动回来, 或者把docker安装到@docker对应的volume上。如果先安装docker,先停用docker,删除原有目录,再移动过去。

@docker目录不移动也可以,只要软链正确即可。【看不懂此句的忽略即可】

4. 最重要一点,也是容易忽略的:我们映射的卷是否发生变化!

群辉docker迁移磁盘

比如截图的这个容器,我把docker/data映射到/data下面了。注意此处的docker是共享文件夹的docker!

如果docker所在的卷发生了变化(比如重装系统后,磁盘顺序发生变化),原来是/volume1/docker现在变成了/volume2/docker。那么你需要删除后,重新映射,再启动容器。


总结

1. docker套件只是个程序, 我们不关心它,重装也没事。

2. docker数据:包括镜像、容器、网络等信息,这是我们关心的内容。一般和docker程序放到相同的volume下面的@docker目录了。备份后再移回到docker安装的volume下。

3. 容器映射的卷,群辉的目录映射到了容器内部。记得检查下。


更换磁盘,你做个移动操作即可。

更换系统,记得将docker安装到原有的磁盘上。

调整磁盘顺序这种最应该注意映射的卷的问题。


如果手生,可以安装个虚拟机之类的尝试下。表达能力有限,不明白的地方评论区见吧~

展开 收起

Synology 群晖 DS923+ 四盘位 NAS存储(AMD R1600、4GB)

Synology 群晖 DS923+ 四盘位 NAS存储(AMD R1600、4GB)

4892.5元起

Synology 群晖 DS224+ 双盘位NAS(赛扬J4125、2GB)

Synology 群晖 DS224+ 双盘位NAS(赛扬J4125、2GB)

2399元起

Synology 群晖 DS423+ 4盘位 NAS网络存储 (Intel四核、2GB)

Synology 群晖 DS423+ 4盘位 NAS网络存储 (Intel四核、2GB)

3199元起

Synology 群晖 DS1621+ 六盘位NAS (V1500B、4GB)

Synology 群晖 DS1621+ 六盘位NAS (V1500B、4GB)

6899元起

Synology 群晖 DS223 2盘位NAS(Realtek RTD1619B、2GB)

Synology 群晖 DS223 2盘位NAS(Realtek RTD1619B、2GB)

2299元起

群晖(Synology)DS223j 双盘位 NAS网络存储服务器 私有云 智能相册 文件自动同步

群晖(Synology)DS223j 双盘位 NAS网络存储服务器 私有云 智能相册 文件自动同步

1549元起

Synology 群晖 DS1821+ 8盘位 NAS(V1500B、4GB)

Synology 群晖 DS1821+ 8盘位 NAS(V1500B、4GB)

7196元起

Synology 群晖 DS1522+ 5盘位NAS(锐龙R1600、8GB)

Synology 群晖 DS1522+ 5盘位NAS(锐龙R1600、8GB)

5167.19元起

Synology 群晖 DS220+ 2盘位NAS (赛扬J4025、2GB)

Synology 群晖 DS220+ 2盘位NAS (赛扬J4025、2GB)

2179元起

Synology 群晖 DS423 四核心 4盘位 NAS网络存储 私有云 照片自动备份

Synology 群晖 DS423 四核心 4盘位 NAS网络存储 私有云 照片自动备份

3199元起

Synology 群晖 DX517 5盘位NAS存 黑色

Synology 群晖 DX517 5盘位NAS存 黑色

3718.6元起

Synology 群晖 DS920+ 4盘位 NAS存储(J4125、4GB)

Synology 群晖 DS920+ 4盘位 NAS存储(J4125、4GB)

2190.84元起

Synology 群晖 nas存储DS220+主机服务器个人私有云企业2盘办公网络家用局域共享硬盘群辉218+

Synology 群晖 nas存储DS220+主机服务器个人私有云企业2盘办公网络家用局域共享硬盘群辉218+

2849元起

Synology 群晖 DS1821+ 8盘位NAS (V1500B、4GB)

Synology 群晖 DS1821+ 8盘位NAS (V1500B、4GB)

8899元起

Synology 群晖 DS218j 2盘位NAS(Armada 385 88F6820、512MB)

Synology 群晖 DS218j 2盘位NAS(Armada 385 88F6820、512MB)

1359元起

Synology 群晖 DS420+ 4盘位NAS (赛扬J4025、2GB)

Synology 群晖 DS420+ 4盘位NAS (赛扬J4025、2GB)

3090元起
32评论

  • 精彩
  • 最新
  • 所有文件都copy到新安装的docker路径后,打开容器,无法启动。看日志,原因应该是我之前docker是安装在Volume4的,现在新的安装在Volume3了。请问要怎么重新设置映射呢?能否把详细步骤告知一下?十分感谢!

    校验提示文案

    提交
    编辑容器,有个卷的选项卡,删除重新添加

    校验提示文案

    提交
    收起所有回复
  • 你好,我尝试迁移了@docker的数据以后,在移动回来,移动后安装的docker,但是显示docker组件启动失败,是我忽略了什么吗?

    校验提示文案

    提交
    你说的组件是容器么?
    确认下文章第二张图以及卷映射是否正确。还有就是看看日志报啥错。

    校验提示文案

    提交
    不是容器,是docker套件直接启动失败了

    校验提示文案

    提交
    还有5条回复
    收起所有回复
  • 文件系统的不同会不会对这个有影响呢?

    校验提示文案

    提交
    不会,文件系统针对操作系统来说的,软件读写文件不会有差异。

    校验提示文案

    提交
    如果你不懂Linux是很难找出问题的

    校验提示文案

    提交
    收起所有回复
  • 你好,请问下我现在docker安装在volume1上,但是我想把volume2的文件夹映射到docker上,可是群晖这路径都是以volume1为基础的,请问我应该怎么搞

    校验提示文案

    提交
    创建个共享文件夹在2上面。映射时选择对应的共享文件夹路径。

    校验提示文案

    提交
    收起所有回复
  • 想把现有的群晖系统整个docker换到另外一个群晖里,版本差别不是很大,只是型号不一样,我打算先把docker所有文件直接拷过去,这样操作行嘛楼主?

    校验提示文案

    提交
    可以,需要root权限,参考下sudo scp -r …。目录位置保持一致即可。linux下的软件理解成绿色软件。

    校验提示文案

    提交
    收起所有回复
  • 楼主,我只是想在群辉系统里专门加一个固态硬盘跑docker,之前docker和数据都在volume1,现在想转移到ssd的volume2,请问最简单的办法是什么?谢谢

    校验提示文案

    提交
    删除套件,安装docker到固体上,停止docker套件,用root将数据已过去。启动套件啥都有了。原则上就是这个文章写的,好好看看

    校验提示文案

    提交
    删除套件会删除@docker文件夹吗

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 请问下大佬,复制过去的时候,容器要全部停掉吗?

    校验提示文案

    提交
    把套件停用掉, 就是docker也需要停掉

    校验提示文案

    提交
    收起所有回复
  • ```Bash
    sudo cp -r /volume1/@docker /volume3
    #查看确认
    ll /volume3/@appstore/Docker
    #然后创建软连接:
    ln -s -f /volume3/@docker /volume3/@appstore/Docker/docker
    #再次查看确认
    ll /volume3/@appstore/Docker
    ```

    校验提示文案

    提交
  • 完全图形界面操作:
    1.容器导出,选择导出内容和设置;
    2.卸载docker
    3.重新安装至希望的储存空间
    4.导入容器
    5.如果配置文件夹也移动位置了,就要在容器存储空间重新添加文件夹,把原来的删除
    运行即可恢复原来状态

    校验提示文案

    提交
  • 谢谢分享! [看看]

    校验提示文案

    提交
  • 这篇很有用,稍有技术基础的人也能看懂 [高兴]

    校验提示文案

    提交
  • 估计不少同学少了创建 链接那部分吧

    校验提示文案

    提交
    大佬们请问下,少了这一步是不是有很大影响

    校验提示文案

    提交
    收起所有回复
  • 不怕死的可以通过ssh使用synospace命令修改存储池和存储空间号,一定要全部修改完才能重启电脑哦,不然会嘿嘿嘿。。。不过@docker目录不会丢失,先备份好再慢慢折腾

    校验提示文案

    提交
  • 大佬,帮分析性下我为嘛我迁移失败了。从volume2迁移到volume1:root后使用“cp -r /volume2/@docker /volume1”复制数据,然后使用“ls -l /volume1/@docker
    ”能找到数据,应该是复制成功了,但是使用“ll /volume1/@appstore/Docker
    ”显示找不到文件。然后把共享文件夹docker也手动迁移到volume1,重新安装docker套件到volume1,套件能打开,但是里面的映像和容器都没了。

    校验提示文案

    提交
    cp -r /volume2/@docker /volume1 #将@docker从volume2复制到volume1

    ll /volume1/@docker #查看确认

    cp -r /volume2/@appstore/Docker /volume1/@appstore #将Docker从volume2复制到volume1

    ln -s -f /volume1/@docker /volume1/@appstore/Docker/docker #创建软连接

    ll /volume1/@appstore/Docker #查看确认

    以上操作全成功,但是把docker重装到/volume1,打开,原来安装的容器和下载映像都没有了,装回/volume2又有了,我是遗漏了啥???群晖系统版本;DSM 7.0.1-42218 Update 3;docker版本;20.10.3-1239。

    校验提示文案

    提交
    收起所有回复
提示信息

取消
确认
评论举报

相关好价推荐
查看更多好价

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
134
扫一下,分享更方便,购买更轻松