docker-compose使用volumes注意项
使用docker-compose,如果使用到了volumes一定要注意,在进行docker-compose down
时,会自动删除原有容器以及虚拟网。
但是其中定义的volumes会保留。
解决:
如果要down的同时清理干净,就直接加参数--volumes
docker-compose-volumes的说明
docker-compose里两种设置方式都是可以持久化的
绝对路径,本服务直接挂载在宿主机目录
ghost:
image: ghost
volumes:
- ./ghost/config.js:/var/lib/ghost/config.js
卷标的
services:
mysql:
image: mysql
container_name: mysql
volumes:
- mysql:/var/lib/mysql
...
volumes:
mysql:
第一种情况路径直接挂载到本地,比较直观,但需要管理本地的路径,而第二种使用卷标的方式,比较简洁,但你不知道数据存在本地什么位置,下面说明如何查看docker的卷标
查看所有卷标
docker volume ls
查看批量的卷标
$ docker volume ls | grep mysql
local vagrant_mysql
查看具体的volume对应的真实地址
$ docker volume inspect vagrant_mysql
[
{
"Name": "vagrant_mysql",
"Driver": "local",
"Mountpoint": "/var/lib/docker/volumes/vagrant_mysql/_data"
}
]
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。