我有一个正在运行的Mongo数据库容器,名为xyz,来自官方的Mongo Image.我使用docker run -d -p 21707:21707 mongo创建了容器
在这个容器中,我用样本数据创建了2个集合.
现在我想在dockerhub上的新图像中提取此容器.
我使用了docker commit并创建了一个新映像,将其推送到docker hub.如果我在另一个系统上拉图像并从该图像创建一个新容器,则我的原始容器xyz中没有数据.
经过研究我发现mongo图像可以用于卷,但我过去错过了这一步…我认为容器使用/ data / db作为标准卷(docker inspect),在提交时此卷未附加到新形象?!
另外我尝试使用上面提到的相同问题进行docker导出/导入!
现在我的问题,我怎样才能在新的图像/容器中使用我的样本数据迁移这个“xyz”运行容器?
非常感谢!
I used docker commit and created a new image,pushed it on the docker hub. If i pull the image on a other system and create a new container from this image,there are no data like in my origin container xyz.
mongo docker镜像将其数据写入volume.因此,这些数据将不会保存到使用docker commit创建的新docker镜像.出于同样的原因,docker export不会生成您的数据.
how could i reach to migrate this “xyz” running container with my sample data in a new image/container?
你想要的是:
>使用第一个容器的卷重新创建一个容器→请参阅--volumes-from
>将第一个容器的卷数据保存到docker主机上的目录中,并创建一个将此目录安装到容器中的新容器→docker run -v
option
此外,这SO question可能会帮助您计算出数量.