Używam docker-compose i v3. Próbuję zamontować wolumin w dockerze:
./appdata:/appdata
Chciałbym mieć to jako objętość, a następnie odwoływać się do tej objętości z wielu pojemników. Referencyjna konfiguracja objętość tylko pokazuje data-volume:
jak nazwanego objętości, bez wartości, więc nie wyglądają jak wyżej.
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
To daje mi:
BŁĄD: W pliku „./docker-compose.yml” wolumin „app-volume” musi być mapowaniem, a nie ciągiem.
Oczywiście wiem, że muszę zmienić volumes
parę klucz / wartość, ale nie jestem pewien, jak to zmienić, aby móc dzielić wolumen między usługami.
Sprawdziłem również, volumes_from
ale to skutecznie pozwala tylko na dziedziczenie z innych kontenerów. Widziałem, jak ktoś używa volumes_from
innego kontenera, który zawiera żądane mapowanie, ale zcommand: true
ustawieniem, aby kontener nigdy nie był faktycznie uruchamiany, co dla mnie wydaje się po prostu włamaniem.
Jak mogę to zrobić?
Uwaga, to nie mają następującą pracę:
nginx:
volumes:
- ./appdata:/appdata
php:
volumes:
- ./appdata:/appdata
Ale to tylko powielanie i mam nadzieję, że nazwany tom mógłby mi pomóc uniknąć :-)