Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Contoh volume Docker untuk Amazon ECS
Contoh berikut menunjukkan cara menyediakan penyimpanan sementara untuk wadah dan cara menyediakan volume bersama untuk beberapa conatiner, dan cara menyediakan penyimpanan persisten NFS untuk sebuah wadah.
Untuk menyediakan penyimpanan sementara untuk wadah menggunakan volume Docker
Dalam contoh ini, wadah menggunakan volume data kosong yang dibuang setelah tugas selesai. Salah satu contoh kasus penggunaan adalah Anda mungkin memiliki wadah yang perlu mengakses beberapa lokasi penyimpanan file awal selama tugas. Tugas ini dapat dicapai dengan menggunakan volume Docker.
-
Dalam ketentuan tugas bagian
volumes
, tentukan volume data denganname
dan nilaiDockerVolumeConfiguration
. Dalam contoh ini, kami menentukan ruang lingkup sebagaitask
jadi volume dihapus setelah tugas berhenti dan menggunakan built-in driverlocal
."volumes": [ { "name": "
scratch
", "dockerVolumeConfiguration" : { "scope": "task
", "driver": "local
", "labels": { "scratch
": "space
" } } } ] -
Di bagian
containerDefinitions
, mendefiniskan sebuah kontainer dengan nilai-nilaimountPoints
yang mereferensikan nama volume yang didefinisikan dan nilaicontainerPath
untuk memasang volume pada kontainer."containerDefinitions": [ { "name": "
container-1
", "mountPoints": [ { "sourceVolume": "scratch
", "containerPath": "/var/scratch
" } ] } ]
Untuk menyediakan penyimpanan persisten untuk beberapa kontainer menggunakan volume Docker
Dalam contoh ini, Anda ingin volume bersama untuk beberapa kontainer untuk digunakan dan Anda ingin tetap ada setelah satu tugas yang menggunakannya dihentikan. local
Driver bawaan sedang digunakan. Ini agar volume masih terikat dengan siklus hidup instance kontainer.
-
Dalam ketentuan tugas bagian
volumes
, tentukan volume data denganname
dan nilaiDockerVolumeConfiguration
. Dalam contoh ini, tentukanshared
cakupan sehingga volume tetap ada, setel penyediaan otomatis ke.true
Ini agar volume dibuat untuk digunakan. Kemudian, gunakan jugalocal
driver bawaan."volumes": [ { "name": "
database
", "dockerVolumeConfiguration" : { "scope": "shared
", "autoprovision": true, "driver": "local
", "labels": { "database
": "database_name
" } } } ] -
Di bagian
containerDefinitions
, mendefiniskan sebuah kontainer dengan nilai-nilaimountPoints
yang mereferensikan nama volume yang didefinisikan dan nilaicontainerPath
untuk memasang volume pada kontainer."containerDefinitions": [ { "name": "
container-1
", "mountPoints": [ { "sourceVolume": "database
", "containerPath": "/var/database
" } ] }, { "name": "container-2
", "mountPoints": [ { "sourceVolume": "database
", "containerPath": "/var/database
" } ] } ]
Untuk menyediakan penyimpanan persisten NFS untuk wadah menggunakan volume Docker
Dalam contoh ini, kontainer menggunakan volume data NFS yang dipasang secara otomatis saat tugas dimulai dan dilepas saat tugas berhenti. Ini menggunakan local
driver bawaan Docker. Salah satu contoh kasus penggunaan adalah Anda mungkin memiliki penyimpanan NFS lokal dan perlu mengaksesnya dari tugas ECS Anywhere. Ini dapat dicapai dengan menggunakan volume Docker dengan opsi driver NFS.
-
Dalam ketentuan tugas bagian
volumes
, tentukan volume data denganname
dan nilaiDockerVolumeConfiguration
. Dalam contoh ini, tentukantask
cakupan sehingga volume dilepas setelah tugas berhenti. Gunakanlocal
driver dan konfigurasikandriverOpts
dengantype
,device
, dano
opsi yang sesuai. GantiNFS_SERVER
dengan endpoint server NFS."volumes": [ { "name": "NFS", "dockerVolumeConfiguration" : { "scope": "task", "driver": "local", "driverOpts": { "type": "nfs", "device": "$
NFS_SERVER
:/mnt/nfs", "o": "addr=$NFS_SERVER
" } } } ] -
Di
containerDefinitions
bagian tersebut, tentukan wadah denganmountPoints
nilai yang mereferensikan nama volume yang ditentukan dancontainerPath
nilai untuk memasang volume pada wadah."containerDefinitions": [ { "name": "
container-1
", "mountPoints": [ { "sourceVolume": "NFS
", "containerPath": "/var/nfsmount
" } ] } ]