实际上,我像这样运行我的容器,例如:
docker run -v /nexus-data:/nexus-data sonatype/nexus3
^
阅读完文档后,我发现了完全由docker管理的卷。出于某些原因,我想改变运行我的容器的方式,做这样的事情:
docker run -v nexus-data:/nexus-data sonatype/nexus3
^
我想将现有的bind-mount传输到卷。
但我不想将数据丢失到/nexus-data
文件夹中,是否有可能将此文件夹转移到新卷,whitout重启所有内容?因为我还有Jenkins和Sonar容器,我只想改变拥有持久数据的方式。这是一个正确的方法吗?
答案 0 :(得分:0)
您可以尝试以下步骤,这样就不会丢失当前的nexus数据。
#>docker run -v nexus-data:/nexus-data sonatype/nexus3
#>docker copy /nexus-data/* <container-name-or-id>:/nexus-data
#>docker stop <container-name-or-id>
#>docker start <container-name-or-id>
docker copy会将数据从主机的/ nexus-data文件夹复制到容器的FS / nexus-data文件夹,这是您安装的卷。
如果您在执行以下步骤时遇到任何问题,请与我们联系。