Con Docker Compose v1.6.0 +, ora esiste una nuova sintassi / versione 2 per il docker-compose.yml
file. Le modifiche includono una chiave di livello superiore separata denominata volumes
. Ciò consente di "centralizzare" le definizioni di volume in un'unica posizione.
Quello che sto cercando di fare è nominare i volumi lì dentro e avere un singolo percorso di riferimento di volume multiplo sul mio disco host locale. Di seguito è riportato un esempio che genera un'eccezione con un Traceback
che termina con
AttributeError: 'list' object has no attribute 'items'
Esempio docker-compose.yml
:
version: '2'
services:
db:
image: postgres
volumes:
- database:/var/lib/postgres/data
php:
image: php-fpm:5.6
volumes:
- phpconf:/etc/php/conf.d
namedvolume:
container_name: namedvolume
build: ./Docker/Testvolume
volumes:
- ./Docker/Testvolume/shareme
volumes:
database:
- ./Docker/Postgres/db:ro
- ./Docker/Postgres/ini
phpconf:
- ./Docker/PHP-FPM/conf
singledir: ./Docker/foo
completemap: ./Docker/bar:/etc/service/conf.d
- namedvolume:/etc/service/conf.d # < this was a separate attempt w/o the other keys
… ?
Finora ho letto attraverso tutti i documenti Docker Compose master
-branch riferimento configurazione del volume, il Docker Componi docs Volume / di riferimento Volume-driver e guardato attraverso esempi GitHub per trovare la sintassi corretta che ci si aspetta. Sembra che nessuno lo stia già utilizzando (GitHub) e la documentazione è lungi dall'essere completa (docker.com). Ho anche provato a creare un volume separato come service
e fare riferimento in esso volumes
, ma non funziona altrettanto. Qualche idea su come dovrebbe apparire questa sintassi?