我正在使用Neo4j码头形象和创建容器。然后将一些数据添加到容器中。
现在,我希望将容器作为图像导出,以便将来使用,其中包含数据。
How can I do it?
发布于 2017-12-22 07:50:35
可以使用命令docker commit <container-name> <target-image-name>
将停靠容器转换为图像。
然而,正如 提交命令文档中所描述的那样,
提交操作将不包括安装在容器内的卷中包含的任何数据。
neo4j图像将/data
声明为卷,因此提交命令将不包含您创建的数据,这些数据存储在容器中的/data
下。您需要复制此文件夹并将其复制回新容器中。
docker cp <old-container-name>:/data container-data
docker run -v container-data:/data <commited-image>
更新
如果要将数据放入已注册的图像中,请按以下方式创建自定义图像:
FROM <commited-image>
COPY container-data /data
一旦使用docker build
构建了这个映像,您就应该得到一个与正在运行的容器相同的映像。然后,您可以将此映像推送到码头注册中心,并在其他主机上运行它。
发布于 2017-12-22 07:21:28
1)您需要使用docker build命令,以便首先构建映像,即修船机构建选项路径、管道、URL、URL- 2)使用docker push命令将该映像推送到存储库集线器、停靠点推送选项名称:TAG
在此之后,您可以通过docker拉下载以使用该映像。
发布于 2017-12-22 07:24:01
docker commit
命令就是为此而设计的。
去看医生
https://docs.docker.com/engine/reference/commandline/commit/
例如,如果
docker ps
显示带有id的容器。
123 456
还有这个名字
neo4j
我可以做任何一件
docker commit 123abc456def myuser/myimage:myversion
或
docker commit neo4j myuser/myimage:myversion
所以
docker images
现在将显示我被逗号的图像
https://stackoverflow.com/questions/47936599
复制相似问题