Att montera mappar (eller filsystem) innebär att länka eller ansluta ett filsystem (mapp eller katalog) till en viss plats i ett annat filsystem. På så sätt kan du göra innehållet i en mapp tillgängligt i en annan mapp eller till och med på en annan plats i systemet.
Mappmontering är en viktig funktion i operativsystem och används ofta i samband med containerisering som Docker eller virtualisering för att ge åtkomst till filer och data mellan värdmaskinen och containrar eller virtuella maskiner.
Den grundläggande idén bakom mappmontering är att dela upp ett fysiskt lagringsområde (t.ex. en disk eller ett filsystem) i olika logiska områden för att organisera och komma åt filer. Detta gör att du kan kontrollera och ändra innehållet i ett filsystem utan att påverka andra filsystem eller kataloger.
Mappmontering används ofta för att utbyta data mellan värddatorn och behållare, uppdatera kod under programutveckling, lagra databaser eller anpassa konfigurationsfiler.
Mappmontering i Docker Compose gör att du kan utbyta data mellan värdmaskinen och behållarna, vilket ger flera fördelar och möjligheter:
I Docker Compose kan du montera värdmaskinens mappar i behållare med hjälp av alternativet `volumes`
. Här är ett exempel på användning av volymer
i filen docker-compose.yml
:
yaml
version: '3'
services:
app:
image: nginx
volumes:
- /path_to_host_folder:/path_to_folder_volume
I exemplet ovan är"/path_to_host_folder
" sökvägen till den mapp på värdmaskinen som du vill montera i en behållare. "/path_to_folder_volume
" är sökvägen till den mapp i behållaren där du vill montera värdmappen.
Du kan också använda relativa sökvägar i stället för absoluta sökvägar genom att ange sökvägen i förhållande till platsen för filen `docker-compose.yml`
. I det här fallet använder du `./`
för att ange den aktuella katalogen.
yaml
version: '3'
services:
app:
image: nginx
volumes:
- ./host's_folder:/path_to_folder_volume
Du kan också ange flera monterade mappar genom att helt enkelt lägga till dem i listan `volumes`
.
yaml
version: '3'
services:
app:
image: nginx
volumes: