我有一个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实例而将卷数据保留在任何地方或缓存在任何地方。