1.8 KiB
1.8 KiB
Docker AfterWork
Fichiers Docker pour le build et l’exécution de l’API AfterWork.
Fichiers
| Fichier | Usage |
|---|---|
Dockerfile |
Image dev (JAR pré-buildé, Alpine) |
Dockerfile.prod |
Image prod (multi-stage Maven + UBI8) |
docker-compose.yml |
Stack optionnelle (app + PostgreSQL/Kafka sur l’hôte) |
Build (depuis la racine du projet)
# Image de production
docker build -f docker/Dockerfile.prod -t afterwork-quarkus:latest .
# Image de dev (après mvn package)
docker build -f docker/Dockerfile -t afterwork-quarkus:dev .
Docker Compose
Utilise le PostgreSQL et Kafka déjà en cours d’exécution sur l’hôte (host.docker.internal).
Depuis la racine :
docker-compose -f docker/docker-compose.yml up -d
Depuis docker/ :
cd docker && docker-compose up -d
PostgreSQL (obligatoire)
L’application se connecte à PostgreSQL sur l’hôte (host.docker.internal:5432). Sans identifiants, l’erreur « no password was provided » apparaît.
- Par défaut (si vous ne définissez rien) :
DB_USERNAME=afterwork,DB_PASSWORD=changeme,DB_NAME=afterwork_db. - Créer la base et l’utilisateur dans PostgreSQL, par exemple :
CREATE USER afterwork WITH PASSWORD 'changeme'; CREATE DATABASE afterwork_db OWNER afterwork; - Ou utiliser vos identifiants via un fichier
.envà la racine du projet (mic-after-work-server-impl-quarkus-main) — Docker Compose le charge quand vous lancez depuis cette racine :Si vous lancez depuis# Contenu de .env à la racine du projet DB_USERNAME=monuser DB_PASSWORD=monmotdepasse DB_NAME=afterwork_dbdocker/(cd docker && docker-compose up), placez le.envdans le dossierdocker/.