Docker Commando's Spiegbriefje
Docker is een open-source applicatie-containermotor waarmee ontwikkelaars hun applicaties en afhankelijkheden kunnen verpakken in een draagbare image, die vervolgens kan worden vrijgegeven op elke populaire Linux- of Windows-machine, en virtualisatie kan ook worden bereikt. Containers gebruiken volledig een sandbox-mechanisme en hebben geen interfaces tussen elkaar.
Algemeen Gebruik
Start een container in de achtergrond
docker run -d jenkinsStart een interactieve container
docker run -it ubuntu bashStart een container die automatisch wordt verwijderd wanneer deze stopt
docker run --rm ubuntu bash Start een container met poort-mapping
docker run -p 80:80 -d nginx Start een benoemde container
docker run --name mydb redis Start een gestopte container
docker start mydb Stop een container
docker stop mydbStart een container en voeg metadata toe
docker run -d \ label=traefik.backend=jenkins jenkinsImages Bouwen (Build Images)
Bouw een image van een Dockerfile in de huidige directory
docker build --tag myimage . Forceer de herbouw van een image
docker build --no-cache . Leg de wijzigingen van een container vast in een image (Commit)
docker commit c7337 myimage Verwijder alle ongebruikte images
docker rmi $(docker images -q -f "dangling=true")Debuggen (Debug)
Inloggen op een draaiende container
docker exec -it c7337 dockerToon activiteitslogboeken van een draaiende daemon-container
docker logs -f c7337Toon de blootgestelde poorten van een container
docker port c7337Volumes
Maak een lokaal volume aan
docker volume create --name myvol Koppel een volume wanneer een container start (Mounten)
docker run -v myvol:/data redisVernietig een volume
docker volume rm myvol Lijst alle volumes op
docker volume lsMaak een lokaal netwerk aan
docker network create mynet Verbind een container met een netwerk bij het opstarten
docker run -d --net mynet redisVerbind een container met een specifiek netwerk
docker network connect mynet c7337 Verbreek de verbinding tussen een container en een netwerk
docker network disconnect mynet c7337Containerbeheer
Lijst draaiende containers op
docker psLijst alle containers op (inclusief draaiende en gestopte)
docker ps -aInspecteer container-metadata
docker inspect c7337Lijst alle lokaal beschikbare images op
docker imagesVerwijder alle gestopte containers
docker rm $(docker ps --filter status=exited -q) Lijst alle containers op met een specifiek label
docker ps --filter label=traefik.backendEen draaiende container opvragen met specifieke metadata
docker inspect -f '{{ .NetworkSettings.IPAddress }}' c7337Beschrijving
Image Naam
redis, jenkins, nginxContainernaam of Commit-ID
mydb # containernaam
c7337 # commit-ID