Docker pour les Debutants
Docker permet de conteneuriser vos applications pour garantir qu'elles fonctionnent partout de la meme maniere.
Concepts cles
- Image : Template en lecture seule
- Container : Instance executable d'une image
- Dockerfile : Instructions pour creer une image
- Docker Compose : Orchestration multi-conteneurs
Commandes essentielles
docker pull nginx # Telecharger une image
docker run -d -p 80:80 nginx # Lancer un conteneur
docker ps # Lister les conteneurs
docker stop CONTAINER_ID # Arreter
docker rm CONTAINER_ID # Supprimer
Dockerfile exemple
FROM node:20-alpine
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
EXPOSE 3000
CMD ["node", "server.js"]
Docker Compose
version: '3.8'
services:
app:
build: .
ports:
- "3000:3000"
db:
image: mysql:8
environment:
MYSQL_ROOT_PASSWORD: secret
Bonnes pratiques
- Utiliser des images officielles
- Minimiser les layers
- Utiliser .dockerignore
- Ne pas executer en root