我使用docker run -it -v /xx1 -v /xx2 [image] /bin/bash
创建容器。如何在Docker镜像中删除配置卷
然后提交图像并推送到码头集线器。
使用docker inspect [image]
的Volumes
细节
"Volumes": {
"/xx1": {},
"/xx2": {}
},
现在我想删除卷/xx1
这个形象。
我该怎么办?
我使用docker run -it -v /xx1 -v /xx2 [image] /bin/bash
创建容器。如何在Docker镜像中删除配置卷
然后提交图像并推送到码头集线器。
使用docker inspect [image]
的Volumes
细节
"Volumes": {
"/xx1": {},
"/xx2": {}
},
现在我想删除卷/xx1
这个形象。
我该怎么办?
我认为现在Docker工具不可能这样做。您无法从正在运行的容器中删除卷,或者如果要将图像用作新Dockerfile中的基础,则无法删除继承的卷。
可能您可以使用JérômePetazzoni的nsenter
工具手动删除容器内的安装,然后提交。你可以使用这种方法来达到attach a volume to a running container,但是需要做一些相当低级别的黑客操作。
一个简单的方法来删除卷是导出然后导入容器图像:
docker run --name my-container -it [image] /bin/bash
docker export my-container > tarball
docker import tarball
我在这里度过了同样的问题,有很多的试用/错误和解释: https://stackoverflow.com/questions/47043466/docker-compose-reusing-volumes我想这不能做? –