首页 > 解决方案 > docker 卷已删除,但似乎已缓存

问题描述

我有一个docker-compose.yml:```

version: '2'

volumes:
    db-data:
    vendor:
    var:

services:
    mysql:
        container_name: test-mysql-5.7
        image: mysql:5.7
        ports:
            - '3306:3306'
        volumes:
            - db-data:/var/lib/mysql
            - /home/ubuntu/www/prestashop-shops/test-ps/seeds:/docker-entrypoint-initdb.d
        environment:
            MYSQL_ROOT_PASSWORD: test123
        restart: always

```

我运行docker-compose up -d,它将调出带有相关卷的容器。我一直在玩这个,需要把它拆下来再测试docker-compose.yml一次。

我通过在文件夹中运行来进行拆解docker-compose rm -fsv,该文件夹用于关闭容器和一些卷。

然后我运行也由撰写文件创建docker volume ls | grep test- | awk '{print $2}' | xargs docker volume rm的卷。test_db-data, test_var, test_vendor

然后我再次运行docker-compose up -d,但是当我进入mysql实例并使用SHOW DATABASES;命令检查数据库时。之前创建的所有数据库都还在

我已经检查了文件系统/var/lib/docker/volumes/,看看是否还有任何物理文件可用,但没有。

我尝试将db-data撰写文件的一部分重命名为其他内容,但它仍然存在。

我认为这可能会缓存在图像中,但我不记得构建任何东西。

想知道卷数据是否存在于任何地方或缓存在任何地方,因为我现在无法在我的服务器上部署一个干净的 mysql 实例。

标签: mysqlsqldockerdocker-composedocker-volume

解决方案


推荐阅读