diff --git a/.env.example b/.env.example deleted file mode 100644 index d68b44f..0000000 --- a/.env.example +++ /dev/null @@ -1,18 +0,0 @@ -# Ports d'accès (volontairement non standards) -FRONTEND_HOST_PORT=8781 -BACKEND_HOST_PORT=4790 -DB_HOST_PORT=6543 - -# Base de données -POSTGRES_USER=presencia -POSTGRES_PASSWORD=change-me-strong-password -POSTGRES_DB=presencia - -# Sécurité -JWT_SECRET=change-me-to-a-long-random-string -COOKIE_SECURE=false - -# Compte administrateur créé au premier démarrage -ADMIN_EMAIL=admin@presencia.local -ADMIN_PASSWORD=ChangeMe123! -ADMIN_NAME=Administrateur diff --git a/README.md b/README.md index 7ec16d1..713cbfb 100644 --- a/README.md +++ b/README.md @@ -15,13 +15,13 @@ Application de gestion des présences par demi-journée, multi-sociétés, avec ## Démarrage +Toute la configuration (ports, mot de passe base de données, `JWT_SECRET`, identifiants admin) est définie directement dans `docker-compose.yml` — il n'y a pas de fichier `.env` à créer. Éditez les valeurs dans `docker-compose.yml` avant le premier démarrage (au minimum `POSTGRES_PASSWORD`, `JWT_SECRET` et `ADMIN_PASSWORD`), puis : + ```bash -cp .env.example .env -# éditer .env : mot de passe DB, JWT_SECRET, identifiants admin par défaut docker compose up -d --build ``` -Ports par défaut (modifiables dans `.env`) : +Ports par défaut (modifiables directement dans `docker-compose.yml`) : | Service | Port hôte | |-----------|-----------| @@ -31,7 +31,9 @@ Ports par défaut (modifiables dans `.env`) : Ouvrir http://localhost:8781 -Un compte administrateur est créé automatiquement au premier démarrage avec les identifiants définis par `ADMIN_EMAIL` / `ADMIN_PASSWORD` dans `.env` (par défaut `admin@presencia.local` / `ChangeMe123!`). **Changez ce mot de passe après la première connexion** (aucune page de changement de mot de passe en libre-service n'est fournie côté cadre ; un administrateur peut réinitialiser le mot de passe de n'importe quel compte depuis l'onglet Utilisateurs). +Un compte administrateur est créé automatiquement au premier démarrage avec les identifiants définis par `ADMIN_EMAIL` / `ADMIN_PASSWORD` dans `docker-compose.yml` (par défaut `admin@presencia.local` / `ChangeMe123!`). **Changez ce mot de passe après la première connexion** (aucune page de changement de mot de passe en libre-service n'est fournie côté cadre ; un administrateur peut réinitialiser le mot de passe de n'importe quel compte depuis l'onglet Utilisateurs). + +Si vous changez les identifiants admin dans `docker-compose.yml` *après* un premier démarrage, ils n'auront aucun effet : le compte admin n'est créé qu'une seule fois (au premier démarrage, base vide). Pour le modifier ensuite, utilisez l'écran Utilisateurs une fois connecté, ou réinitialisez le volume `presencia_pgdata`. ## Utilisation diff --git a/docker-compose.yml b/docker-compose.yml index daaf249..7ce2c67 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -3,15 +3,15 @@ services: image: postgres:16-alpine restart: unless-stopped environment: - POSTGRES_USER: ${POSTGRES_USER:-presencia} - POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-presencia} - POSTGRES_DB: ${POSTGRES_DB:-presencia} + POSTGRES_USER: presencia + POSTGRES_PASSWORD: presencia_change_me + POSTGRES_DB: presencia volumes: - presencia_pgdata:/var/lib/postgresql/data ports: - - "${DB_HOST_PORT:-6543}:5432" + - "6543:5432" healthcheck: - test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER:-presencia}"] + test: ["CMD-SHELL", "pg_isready -U presencia"] interval: 5s timeout: 5s retries: 10 @@ -26,16 +26,16 @@ services: PORT: 4790 PGHOST: db PGPORT: 5432 - PGUSER: ${POSTGRES_USER:-presencia} - PGPASSWORD: ${POSTGRES_PASSWORD:-presencia} - PGDATABASE: ${POSTGRES_DB:-presencia} - JWT_SECRET: ${JWT_SECRET:-change-me-to-a-long-random-string} - COOKIE_SECURE: ${COOKIE_SECURE:-false} - ADMIN_EMAIL: ${ADMIN_EMAIL:-admin@presencia.local} - ADMIN_PASSWORD: ${ADMIN_PASSWORD:-ChangeMe123!} - ADMIN_NAME: ${ADMIN_NAME:-Administrateur} + PGUSER: presencia + PGPASSWORD: presencia_change_me + PGDATABASE: presencia + JWT_SECRET: change-me-to-a-long-random-string + COOKIE_SECURE: "false" + ADMIN_EMAIL: admin@presencia.local + ADMIN_PASSWORD: ChangeMe123! + ADMIN_NAME: Administrateur ports: - - "${BACKEND_HOST_PORT:-4790}:4790" + - "4790:4790" frontend: build: ./frontend @@ -43,7 +43,7 @@ services: depends_on: - backend ports: - - "${FRONTEND_HOST_PORT:-8781}:80" + - "8781:80" volumes: presencia_pgdata: