Docker: Gebruik geen Docker-bind mounts
Deze documentatie maakt deel uit van de Volumes-gids. Bekijk de volledige gids hier: Hoe u de gegevens van uw containers kunt behouden met Docker-volumes.
👋 Welkom bij de documentatie van Stackhero!
Stackhero biedt een kant-en-klare Docker cloud CaaS (Containers as a Service) oplossing die tal van voordelen biedt, waaronder:
- Zet eenvoudig uw containers in productie met slechts een
docker-compose up.- Aanpasbare domeinnaam beveiligd met HTTPS (bijvoorbeeld, https://api.uw-bedrijf.com, https://www.uw-bedrijf.com, https://backoffice.uw-bedrijf.com).
- Optimale prestaties en robuuste beveiliging aangedreven door een privé en toegewijde VM.
- Moeiteloze updates met slechts één klik.
Bespaar tijd en vereenvoudig uw leven: het kost slechts 5 minuten om de Docker CaaS cloud hosting oplossing van Stackhero te proberen en uw containers in productie te zetten!
Gebruik geen bind mounts op Stackhero. Kies altijd voor Docker-volumes om dataverlies te voorkomen.
Bind mounts houden in dat een directory van de Stackhero-host-VM aan een container wordt gekoppeld. Als u echter op bind mounts vertrouwt, zal het bijwerken van uw Stackhero for Docker-instantie resulteren in het verlies van alle op deze manier opgeslagen gegevens.
Bind mounts worden meestal gespecificeerd in de docker run-opdracht met een syntaxis zoals -v /myDirectory:/mnt (let op de voorloop /). In Docker Compose-bestanden verschijnen ze als volumes: /myDirectory:/mnt. Verbied deze configuraties of u verliest uw gegevens.
Gebruik in plaats daarvan Docker-volumes, die door Docker worden beheerd en geen absolute paden refereren.
Samenvattend:
Onjuiste aanpak:
docker run -it -v /myDirectory:/mnt alpine
Juiste aanpak:
docker volume create myVolume
docker run -it -v myVolume:/mnt alpine
Bij het werken met Docker Compose-bestanden:
Onjuiste configuratie:
services:
myService:
image: alpine
volumes:
- /myDirectory:/mnt
Juiste configuratie:
services:
myService:
image: alpine
volumes:
- myVolume:/mnt
volumes:
myVolume:
name: myVolume