106 lines
2.6 KiB
Markdown
106 lines
2.6 KiB
Markdown
# Docker Compose - Aide-mémoire
|
|
|
|
## Commandes Essentielles
|
|
|
|
### Démarrage et Arrêt
|
|
```bash
|
|
# Démarrer les services
|
|
docker compose up -d # Mode détaché (arrière-plan)
|
|
docker compose up # Mode interactif (voir les logs)
|
|
|
|
# Arrêter les services
|
|
docker compose down # Arrête et supprime les conteneurs
|
|
docker compose stop # Arrête sans supprimer
|
|
```
|
|
|
|
### Logs et Surveillance
|
|
```bash
|
|
# Voir les logs
|
|
docker compose logs # Tous les logs
|
|
docker compose logs -f # Suivre les logs en direct
|
|
docker compose logs [service] # Logs d'un service spécifique
|
|
|
|
# État des conteneurs
|
|
docker compose ps # Liste et état des conteneurs
|
|
```
|
|
|
|
### Construction et Reconstruction
|
|
```bash
|
|
# Construire les images
|
|
docker compose build # Tous les services
|
|
docker compose build [service] # Un service spécifique
|
|
|
|
# Reconstruction et démarrage
|
|
docker compose up -d --build # Reconstruire puis démarrer
|
|
```
|
|
|
|
## Structure docker-compose.yml
|
|
|
|
### Services
|
|
```yaml
|
|
services:
|
|
monservice:
|
|
image: ... # Utiliser une image existante
|
|
build: ... # Construire depuis un Dockerfile
|
|
ports: # Exposer des ports
|
|
volumes: # Monter des volumes
|
|
depends_on: # Définir des dépendances
|
|
networks: # Connecter aux réseaux
|
|
```
|
|
|
|
### Réseaux
|
|
```yaml
|
|
networks:
|
|
monreseau: # Réseau simple
|
|
monreseau_interne:
|
|
internal: true # Réseau isolé
|
|
```
|
|
|
|
### Volumes
|
|
```yaml
|
|
volumes:
|
|
monvolume: # Volume pour persistance
|
|
```
|
|
|
|
## Commandes Utiles
|
|
|
|
### Inspection
|
|
```bash
|
|
# Vérifier la configuration
|
|
docker compose config # Valider le fichier compose
|
|
|
|
# Voir les réseaux
|
|
docker network ls # Lister les réseaux
|
|
docker network inspect [réseau] # Détails d'un réseau
|
|
|
|
# Voir les volumes
|
|
docker volume ls # Lister les volumes
|
|
```
|
|
|
|
### Debug
|
|
```bash
|
|
# Accéder à un conteneur
|
|
docker compose exec [service] sh # Ouvrir un shell
|
|
|
|
# Voir les processus
|
|
docker compose top # Processus en cours
|
|
```
|
|
|
|
### Gestion des Services
|
|
```bash
|
|
# Redémarrer des services
|
|
docker compose restart # Tous les services
|
|
docker compose restart [service] # Un service spécifique
|
|
|
|
# Recréer des conteneurs
|
|
docker compose up -d --force-recreate
|
|
```
|
|
|
|
## Conseils
|
|
|
|
- Utilisez toujours `-d` en production, jamais en développement
|
|
- Pensez à vérifier les logs en cas de problème
|
|
- `docker compose config` est votre ami pour valider la syntaxe
|
|
- Les réseaux se créent automatiquement
|
|
- Les volumes persistent après un `down` (sauf si `-v`)
|