Bases & syntaxe
docker run
docker run -d --name my_container nginx
Démarrage d'un conteneur en arrière-plan avec un nom spécifique.
docker pull
docker pull ubuntu:20.04
Téléchargement d'une image Docker depuis le registre.
docker ps
docker ps -a
Liste tous les conteneurs, en cours d'exécution ou non.
Structures de données
Dockerfile
FROM ubuntu:20.04
RUN apt-get update && apt-get install -y nginx
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]
Définition d'une image Docker avec des instructions.
Fonctions & methodes essentielles
docker exec
docker exec -it my_container bash
Exécution d'un processus dans un conteneur en cours d'exécution.
docker commit
docker commit my_container my_new_image
Sauvegarde des modifications apportées à un conteneur en tant qu'image.
Patterns courants
Multi-stage builds
## Stage 1
FROM golang:1.16 AS builder
WORKDIR /app
COPY . .
RUN go build -o main .
## Stage 2
FROM alpine:latest
WORKDIR /root/
COPY --from=builder /app/main .
CMD ["./main"]
Amélioration des performances et de la sécurité en utilisant plusieurs étapes.
Operations avancées
docker volume create
docker volume create my_volume
Création d'un volume pour persister les données.
docker network create
docker network create my_network
Création d'un réseau pour connecter des conteneurs entre eux.
Debugging & outils
docker logs
docker logs my_container
Affiche les journaux d'un conteneur en cours d'exécution.
docker top
docker top my_container
Liste les processus en cours d'exécution dans un conteneur.