Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Esempi di volumi Docker
Per fornire spazio di archiviazione effimero per un contenitore utilizzando un volume Docker
In questo esempio, un container utilizza un volume di dati vuoto che viene smaltito al termine dell'attività. Ad esempio, potresti avere un container che deve accedere alla posizione di storage di alcuni file temporanei durante un'attività. Questa attività può essere eseguita utilizzando un volume Docker.
-
Nella sezione
volumes
della definizione di attività, definisci un volume di dati con i valoriname
eDockerVolumeConfiguration
. In questo esempio, specifichiamo l'ambito cometask
in modo che il volume venga eliminato dopo l'arresto dell'attività e venga utilizzato il driverlocal
incorporato."volumes": [ { "name": "
scratch
", "dockerVolumeConfiguration" : { "scope": "task
", "driver": "local
", "labels": { "scratch
": "space
" } } } ] -
Nella sezione
containerDefinitions
, definisci un container con valorimountPoints
che faccia riferimento al nome del volume definito e al valorecontainerPath
per montare il volume sul container."containerDefinitions": [ { "name": "
container-1
", "mountPoints": [ { "sourceVolume": "scratch
", "containerPath": "/var/scratch
" } ] } ]
Per fornire lo storage persistente per un container utilizzando un volume Docker
In questo esempio, desideri un volume condiviso per più container da utilizzare e che persista dopo l'interruzione di qualsiasi singola attività che lo utilizza. Il driver local
integrato è in uso. Per questo motivo, il volume è ancora legato al ciclo di vita dell'istanza di container.
-
Nella sezione
volumes
della definizione di attività, definisci un volume di dati con i valoriname
eDockerVolumeConfiguration
. In questo esempio, specificare un ambitoshared
in modo che il volume persista, imposta il provisioning automatico sutrue
. In questo modo il volume viene creato per l'uso. Quindi, utilizza anche il driverlocal
integrato."volumes": [ { "name": "
database
", "dockerVolumeConfiguration" : { "scope": "shared
", "autoprovision": true, "driver": "local
", "labels": { "database
": "database_name
" } } } ] -
Nella sezione
containerDefinitions
, definisci un container con valorimountPoints
che faccia riferimento al nome del volume definito e al valorecontainerPath
per montare il volume sul container."containerDefinitions": [ { "name": "
container-1
", "mountPoints": [ { "sourceVolume": "database
", "containerPath": "/var/database
" } ] }, { "name": "container-2
", "mountPoints": [ { "sourceVolume": "database
", "containerPath": "/var/database
" } ] } ]
Fornire lo spazio di archiviazione persistente per un container utilizzando un volume Docker
In questo esempio, un container utilizza un volume di dati NFS che viene montato automaticamente all'avvio dell'attività e viene smontato al termine. Questo utilizza il driver local
integrato in Docker. Un esempio di caso d'uso potrebbe essere quello in cui hai un'archiviazione NFS locale e hai la necessità di accedervi attraverso un'attività ECS Anywhere. Ciò può essere ottenuto utilizzando un volume Docker con opzione driver NFS.
-
Nella sezione
volumes
della definizione di attività, definisci un volume di dati con i valoriname
eDockerVolumeConfiguration
. In questo esempio, specifica un ambitotask
in modo che il volume venga smontato al termine dell'attività. Usa il driverlocal
e configura ledriverOpts
con le opzionitype
,device
eo
di conseguenza. SostituisciNFS_SERVER
con l'endpoint del server NFS."volumes": [ { "name": "NFS", "dockerVolumeConfiguration" : { "scope": "task", "driver": "local", "driverOpts": { "type": "nfs", "device": "$
NFS_SERVER
:/mnt/nfs", "o": "addr=$NFS_SERVER
" } } } ] -
Nella sezione
containerDefinitions
, definisci un container con valori dimountPoints
che facciano riferimento al nome del volume definito e al valore dicontainerPath
per montare il volume sul container."containerDefinitions": [ { "name": "
container-1
", "mountPoints": [ { "sourceVolume": "NFS
", "containerPath": "/var/nfsmount
" } ] } ]