如Docker文档中有关使用卷的文档中所述,存在所谓
的仅数据 容器的概念,该容器提供了可以安装到多个其他容器中的卷,无论该数据容器是否正在运行。
基本上,这听起来很棒。但是有一件事我不明白。
这些卷(由于可移植性原因, 未
明确映射到主机上的文件夹,如文档所述)由Docker在主机上的某个内部文件夹中创建和管理/var/docker/volumes/…
。
假设我使用了这样一个卷,然后需要将其从一台主机迁移到另一台主机-如何移植该卷?AFAICS具有唯一的ID-
我可以直接将卷及其相应的仅数据容器复制到新主机吗?如何找出要复制的文件?还是我还没有发现Docker内置的一些支持?
官方答案在“备份,还原或迁移数据卷”部分中:
备份:
sudo docker run --rm --volumes-from DATA -v $(pwd):/backup busybox tar cvf /backup/backup.tar /data
--rm
:退出容器时将其取出--volumes-from DATA
:附加到DATA容器共享的卷-v $(pwd):/backup
:将当前目录绑定安装到容器中;将tar文件写入busybox
:图像更简单-便于快速维护 tar cvf /backup/backup.tar /data
:创建/ data目录中所有文件的未压缩tar文件恢复:
# create a new data container
$ sudo docker create -v /data --name DATA2 busybox true
# untar the backup files into the new container᾿s data volume
$ sudo docker run --rm --volumes-from DATA2 -v $(pwd):/backup busybox tar xvf /backup/backup.tar
data/
data/sven.txt
# compare to the original container
$ sudo docker run --rm --volumes-from DATA -v `pwd`:/backup busybox ls /data
sven.txt
正如Docker有关卷的文档中所述,存在所谓的仅数据容器的概念,它提供了一个可以装入多个其他容器的卷,无论仅数据容器是否实际运行。 基本上,这听起来很棒。但有一件事我不明白。 这些卷(如文档所述,出于可移植性原因,这些卷不会显式映射到主机上的文件夹)由Docker在主机上的某个内部文件夹中创建和管理()。 假设我使用这样一个卷,然后我需要将它从一台主机迁移到另一台主机——我如何移植该卷?AFAIC
使用时,保存的图像是独立的,因此图像的大小会变大。(~对于10个图像,大小约为9GB) 在提取docker图像后,我探索: 有没有办法有效地导出图像? 注:我已经提到了这一点。这个问题不是它的重复。它没有解决我上面提到的用例。
问题内容: 我在本地计算机上为postgres创建了一个docker卷。 然后,我使用了该卷并运行了一个docker。 之后,我做了一些数据库操作,这些操作自动存储在postgres-data中。现在,我想将该卷从本地计算机复制到另一台远程计算机。怎么做一样。 注意-数据库大小非常大 问题答案: 如果第二台计算机启用了SSH,则可以在第一台计算机上使用Alpine容器来映射该卷,将其捆绑并发送到第
在设置到数据库的连接时出现,并在服务器上的日志文件夹中查看文件error_log,我看到。 谁能告诉我,我是否遗漏了一些必要的步骤,或者问题出在哪里?
我希望使用ssh作为将托管在公司网络中的docker映像传输到私有云的传输机制。设置VPN连接将不是我的首选(因为它只是增加了复杂性)。有什么想法从哪里开始看这个吗 编辑:我和我的团队成员可能每天都要这样做很多次(拉和推)
问题内容: 我目前在开发PC上使用Jenkins。我将其安装在开发PC上,因为我对该工具的了解有限。因此我在开发PC上对其进行了测试。现在,我对Jenkins感到很满意,可以作为我在构建过程中的长期“合作伙伴”,并希望将此Jenkins“移动”到专用服务器上。 在此之前,我完成了很少的构建,并从每个构建中存档了工件。特别是,对于我来说,内部版本号对于版本控制非常重要。 如何将所有Jenkins信息