Aller au contenu

Build & Déploiement

Commandes courantes

Rebuild complet

cd /volume4/docker-speed/perfshop
docker compose build --no-cache
docker compose up -d

Rebuild un seul service

# Frontend (nécessite un build Vite)
docker compose build perfshop-frontend && docker compose up -d perfshop-frontend

# Backend (nécessite un build Maven)
docker compose build perfshop-app && docker compose up -d perfshop-app

# Monitoring (restart suffit, pas de build)
docker compose restart perfshop-monitoring

# Docs (restart suffit si seul mkdocs.yml ou les .md changent)
docker compose restart docs

Vérifier les containers

docker ps | grep perfshop
docker stats --no-stream | grep perfshop

Voir les logs

docker logs perfshop-app --tail=50 -f
docker logs perfshop-monitoring --tail=50 -f
docker logs perfshop-frontend --tail=20

Arborescence des fichiers

/volume4/docker-speed/perfshop/
├── docker-compose.yml
├── frontend/
│   ├── Dockerfile
│   ├── src/
│   │   ├── App.jsx
│   │   ├── chaos-agent.js
│   │   └── ...
│   └── package.json
├── perfshop-app/              # ou backend/
│   ├── Dockerfile
│   ├── src/main/java/
│   └── pom.xml
├── monitoring/
│   ├── Dockerfile
│   └── src/server.js
├── docs/
│   ├── mkdocs.yml
│   └── docs/
├── prometheus/
│   └── prometheus.yml
└── grafana/
    └── provisioning/

Versioning des images

Les images sont taguées manuellement à chaque rebuild significatif :

docker compose build perfshop-frontend
# Modifier le tag dans docker-compose.yml : perfshop-frontend:v25
docker compose up -d perfshop-frontend

Cela permet de revenir à une version précédente :

docker tag perfshop-frontend:v24 perfshop-frontend:rollback