Docker
Docker-datavolymer
Sök…
Introduktion
Docker-datavolymer ger ett sätt att fortsätta data oberoende av behållarens livscykel. Volymer presenterar ett antal användbara funktioner som:
Montera en värdkatalog i behållaren, dela data mellan behållare med filsystemet och bevara data om en behållare raderas
Syntax
- docker volume [OPTIONS] [COMMAND]
Montering av en katalog från den lokala värden i en container
Det är möjligt att montera en värd katalog till en viss väg i din behållare med hjälp av -v
eller --volume
kommandoraden alternativ. Följande exempel kommer att monteras /etc
på värden till /mnt/etc
i behållaren:
(on linux) docker run -v "/etc:/mnt/etc" alpine cat /mnt/etc/passwd
(on windows) docker run -v "/c/etc:/mnt/etc" alpine cat /mnt/etc/passwd
Standardåtkomst till volymen inuti behållaren är lässkrivning. För att montera en skrivskyddad volym inuti en behållare använder du suffixet :ro
:
docker run -v "/etc:/mnt/etc:ro" alpine touch /mnt/etc/passwd
Skapa en namngiven volym
docker volume create --name="myAwesomeApp"
Att använda en namngiven volym gör hantering av volymer mycket mera läsbar för människor. Det är möjligt att skapa en namngiven volym med kommandot anges ovan, men det är också möjligt att skapa en namngiven volym inne i en docker run
kommandot genom att använda -v
eller --volume
kommandoraden alternativ:
docker run -d --name="myApp-1" -v="myAwesomeApp:/data/app" myApp:1.5.3
Observera att att skapa en namngiven volym i den här formen liknar montering av en värdfil / katalog som en volym, förutom att i stället för en giltig sökväg anges volymnamnet. När du har skapat kan namngivna volymer delas med andra containrar:
docker run -d --name="myApp-2" --volumes-from "myApp-1" myApp:1.5.3
Efter att ha kommit ovanstående kommando har en ny behållare skapats med namnet myApp-2
från myApp:1.5.3
bilden, som delar myAwesomeApp
namnet med volym med myApp-1
. Den myAwesomeApp
namngivna volymen är monterad på /data/app
i myApp-2
behållaren, precis som den är monterad på /data/app
i myApp-1
behållaren.