Erweiterte Docker Run-Befehle
Während der grundlegende docker run
-Befehl für viele Anwendungsfälle ausreichend ist, bietet Docker eine breite Palette an Optionen, um das Verhalten Ihrer Container anzupassen und zu optimieren. Hier sind einige erweiterte docker run
-Befehle und ihre Anwendungsfälle.
Umgebungsvariablen
Sie können Umgebungsvariablen an einen Container übergeben, indem Sie den Flaggen -e
oder --env
verwenden. Dies ist nützlich, um Anwendungseinstellungen zu konfigurieren oder Verbindungen zu externen Diensten herzustellen.
docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=mypassword mysql:latest
Volumes mounten
Volumes ermöglichen es Ihnen, Daten außerhalb des Dateisystems des Containers zu speichern. Dies ist besonders wichtig für zustandsbehaftete Anwendungen, die Daten zwischen Containerneustarts beibehalten müssen.
docker run -d -p 80:80 -v /path/on/host:/var/www/html nginx:latest
Netzwerk
Sie können Container mit benutzerdefinierten Netzwerken verbinden, indem Sie die Flagge --network
verwenden. Dies ermöglicht es Containern, sicher und effizient miteinander zu kommunizieren.
docker network create my-network
docker run -d --network my-network --name db mysql:latest
docker run -d --network my-network --name web nginx:latest
Ressourcenbeschränkungen
Sie können die verfügbaren Ressourcen (CPU, Speicher usw.) für einen Container mithilfe verschiedener Flags wie --cpus
, --memory
und --memory-swap
begrenzen.
docker run -d --cpus=2 --memory=4g nginx:latest
Healthchecks
Die Flagge --health-cmd
ermöglicht es Ihnen, einen Befehl zum Überprüfen des Zustands eines laufenden Containers anzugeben. Dies ist nützlich, um den Status Ihrer Anwendungen zu überwachen.
docker run -d --health-cmd="curl -f http://localhost || exit 1" nginx:latest
Durch das Verständnis dieser erweiterten docker run
-Befehle können Sie komplexere und ausgereiftere Docker-basierte Anwendungen erstellen, die Ihren spezifischen Anforderungen entsprechen.