Docker选项删除主机安装的命名卷

时间:2018-10-19 04:06:12

标签: docker docker-compose

我的卷的定义如下:如何删除主机安装的命名卷? docker volume prune or rm or docker-compose down -v仅从/ docker / lib / volumes目录中删除该卷,而不从其安装所在的主机中删除吗?

volumes:
  drupal:
    driver: local
    driver_opts:
      type: bind
      device: $PWD/code/drupal
      o: bind

1 个答案:

答案 0 :(得分:0)

泊坞窗中没有用于删除非泊坞窗管理的卷的命令。您将必须使用常规的os命令(rm -rf)删除它们。

您可以使用以下命令获取由您管理的卷类型为“绑定”的所有容器的容器ID,源目录和目标目录。检查输出后,您决定要对目录做什么

[root@localhost~]# for id in $(docker ps -q); do docker inspect ${id} | jq '.[] | select(.Mounts[].Type=="bind") | [.Id, .Mounts[].Source, .Mounts[].Destination]'; done
[
  "c758b5ea72406d4912741002bcbef25ea7f05b55f8b5863d82c81a046292b12b",
  "/mnt",
  "/mnt1"
]

哪里

容器ID = c758b5ea72406d4912741002bcbef25ea7f05b55f8b5863d82c81a046292b12b

安装在Host = / mnt上的源目录

安装在容器= / mnt1上的目标目录