我正在使用 docker-compose 和 v3。我正在尝试在 docker 中装入一个卷:
./appdata:/appdata
我希望把它作为一个卷,然后从多个容器引用该卷。体积配置参考只显示 data-volume:
作为一个命名卷,没有值,所以它看起来不像上面那样。
services:
nginx:
build: ./nginx/
ports:
- 80:80
links:
- php
volumes:
- app-volume
php:
build: ./php/
expose:
- 9000
volumes:
- app-volume
volumes:
app-volume: ./appdata:/appdata
这给了我:
错误: 在文件“ ./docker-compose. yml”中,卷“ app-volul”必须是映射而不是字符串。
显然,我知道我需要更改 volumes
键/值对,但我不确定 怎么做是否需要更改它,以便在服务之间共享卷。
我还检出了 volumes_from
,但这实际上只允许从其他容器继承。我见过有人在另一个容器上使用 volumes_from
,这个容器包含了他们想要的映射,但是设置了 command: true
,所以这个容器实际上从来没有运行过,在我看来这就像是一个黑客。
我怎么能这么做?
注意,我 做有以下工作:
nginx:
volumes:
- ./appdata:/appdata
php:
volumes:
- ./appdata:/appdata
但这只是复制,我希望一本命名卷可以帮助我避免这种情况: -)