docker-compose.ymlCréez un dossier vide sur votre machine (ex: gestpers/), puis créez-y un fichier docker-compose.yml avec le contenu suivant :
services:
app:
image: revivalsoft/gestpers:v4
ports:
- "8090:80"
environment:
APP_ENV: prod
APP_SECRET: changeme_generate_a_real_secret
DATABASE_URL: "mysql://gestpers:secret@db:3306/gestpers?serverVersion=10.11.2-MariaDB&charset=utf8mb4"
# Optionnel : IA sur les plannings (Google Gemini, gratuit, sans CB)
# Obtenez une clé sur https://aistudio.google.com → Get API key → Create API key in new project
# GEMINI_API_KEY: AIzaSy-votre-clé-ici
depends_on:
db:
condition: service_healthy
restart: unless-stopped
db:
image: mariadb:11
environment:
MYSQL_DATABASE: gestpers
MYSQL_USER: gestpers
MYSQL_PASSWORD: secret
MYSQL_ROOT_PASSWORD: rootsecret
volumes:
- db_data:/var/lib/mysql
healthcheck:
test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"]
interval: 5s
timeout: 5s
retries: 10
restart: unless-stopped
volumes:
db_data:
💡 Pensez à remplacer
changeme_generate_a_real_secretpar une chaîne aléatoire unique (ex: résultat deopenssl rand -hex 32).
Dans le dossier contenant votre docker-compose.yml :
docker compose up -d
Docker télécharge automatiquement l'image et démarre l'application.
Au premier démarrage, la base de données est créée et les migrations appliquées automatiquement. Cela peut prendre quelques secondes.
docker compose pull
docker compose up -d
Les migrations sont appliquées automatiquement au redémarrage.
| Action | Commande |
|---|---|
| Démarrer | docker compose up -d |
| Arrêter | docker compose down |
| Voir les logs | docker compose logs -f app |
| Redémarrer | docker compose restart |
Vos données sont stockées dans un volume Docker nommé db_data.
Pour sauvegarder :
docker compose exec db mariadb-dump -u gestpers -psecret gestpers > sauvegarde.sql
Pour restaurer :
docker compose exec -T db mariadb -u gestpers -psecret gestpers < sauvegarde.sql
⚠️ Ne jamais faire
docker compose down -v: cela supprime toutes vos données.
GestPers intègre une interface de questions en langage naturel sur vos plannings, alimentée par Google Gemini (gratuit, sans carte bancaire).
Rendez-vous sur aistudio.google.com, connectez-vous avec un compte Google, puis cliquez sur Get API key → Create API key in new project. La clé commence par AIza….
Important : choisissez bien "Create API key in new project" pour bénéficier du quota gratuit.
Dans votre docker-compose.yml, décommentez et renseignez la ligne GEMINI_API_KEY :
GEMINI_API_KEY: AIzaSy-votre-clé-ici
Puis redémarrez :
docker compose up -d
Si le port 8090 est occupé, éditez docker-compose.yml :
ports:
- "8091:80" # remplacez 8091 par un port libre
Puis relancez :
docker compose up -d
Content type
Image
Digest
sha256:587a96512…
Size
261.8 MB
Last updated
5 months ago
docker pull revivalsoft/gestpers