2016-09-20 60 views
1

我使用docker run -it -v /xx1 -v /xx2 [image] /bin/bash创建容器。如何在Docker镜像中删除配置卷

然后提交图像并推送到码头集线器。

使用docker inspect [image]

Volumes细节

"Volumes": { 
      "/xx1": {}, 
      "/xx2": {} 
     }, 

现在我想删除卷/xx1这个形象。

我该怎么办?

+0

我在这里度过了同样的问题,有很多的试用/错误和解释: https://stackoverflow.com/questions/47043466/docker-compose-reusing-volumes我想这不能做? –

回答

1

我认为现在Docker工具不可能这样做。您无法从正在运行的容器中删除卷,或者如果要将图像用作新Dockerfile中的基础,则无法删除继承的卷。

可能您可以使用JérômePetazzoni的nsenter工具手动删除容器内的安装,然后提交。你可以使用这种方法来达到attach a volume to a running container,但是需要做一些相当低级别的黑客操作。

0

一个简单的方法来删除卷是导出然后导入容器图像:

  • docker run --name my-container -it [image] /bin/bash
  • docker export my-container > tarball
  • docker import tarball