下面的示例创建dbdata命名卷并在内部引用它db服务:
version: '2'
services:
db:
image: mysql
volumes:
- dbdata:/var/lib/mysql
volumes:
dbdata:
driver: local
(from https://stackoverflow.com/a/35675553/4291814 https://stackoverflow.com/a/35675553/4291814)
我可以看到卷默认的路径为:
/var/lib/docker/volumes/<project_name>_dbdata
我的问题是如何配置主机上的路径dbdata
volume?
随着local
卷驱动程序能够使用任意安装;通过使用绑定挂载 https://docs.docker.com/storage/bind-mounts/你完全可以做到这一点。
用于设置安装到的命名卷/srv/db-data
, your docker-compose.yml
看起来像这样:
version: '2'
services:
db:
image: mysql
volumes:
- dbdata:/var/lib/mysql
volumes:
dbdata:
driver: local
driver_opts:
type: 'none'
o: 'bind'
device: '/srv/db-data'
我还没有使用 compose 文件格式的版本 2 对其进行测试,但是https://docs.docker.com/compose/compose-file/compose-versioning/#version-2 https://docs.docker.com/compose/compose-file/compose-versioning/#version-2并不表明它不应该工作。
我也没有在 Windows 上测试过...
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)