docker-compose down删除在dockerfile上声明的卷?

时间:2017-08-17 19:15:45

标签: docker docker-compose dockerfile

我正在追踪我本周看到的两起事件,其中数据在重新创建容器后丢失,没有后顾之忧,数据已恢复=)

为了清楚起见,我知道文档说的内容以及随附的选项。我四处搜索,有些人确实询问相关问题,但它们通常是关于-v选项,或者数据是否在容器RW层与卷之间。

但是,我对文档中的语言更加好奇:

-v, --volumes       Remove named volumes **declared in the `volumes` section**
                    of the Compose file and anonymous volumes
                    attached to containers.

更具体地说,在Dockerfile中声明卷时,我正在搜索down指令的预期记录行为,而不是在docker-compose文件,volumes部分中。

关于同一主题的相关问题示例,案例:Docker-Compose persistent data MySQL 这个问题也令人困惑,因为OP确实在卷部分中声明了卷。

2 个答案:

答案 0 :(得分:0)

我刚试过它。在Dockerfile中声明卷时,docker-compose downdocker-compose down -v都没有删除卷。

docker-compose down后跟docker volume prune会删除它。

答案 1 :(得分:-1)

在Dockerfile中声明的卷是一个"匿名卷",因此它将被删除。

请参阅此示例:https://gist.github.com/dnephin/0aa8e8962ebcdcebff1cec7315a224dd