Dengan Docker Compose v1.6.0 +, sekarang ada sintaks file baru / versi 2 untuk docker-compose.yml
file tersebut. Perubahan termasuk kunci tingkat atas yang terpisah bernama volumes
. Ini memungkinkan untuk "memusatkan" definisi volume di satu tempat.
Apa yang saya coba lakukan adalah memberi nama volume di sana dan memiliki beberapa jalur referensi volume tunggal pada disk host lokal saya. Berikut ini adalah contoh, melemparkan pengecualian dengan Traceback
yang berakhir dengan
AttributeError: 'list' object has no attribute 'items'
Contoh 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
… ?
Sejauh ini saya membaca semua referensi konfigurasi Docker Compose master
doc- volume Volume, Docker Compose docs Volume / Volume-Driver referensi dan melihat melalui contoh GitHub untuk menemukan sintaks yang benar yang diharapkan. Sepertinya tidak ada yang sudah menggunakan itu (GitHub) dan dokumentasinya masih jauh dari lengkap (docker.com). Saya juga mencoba membangun volume terpisah sebagai service
dan referensi volumes
, tapi itu tidak berhasil juga. Adakah ide tentang bagaimana sintaksis ini seharusnya terlihat?