gmao/docs/DEBIAN.md

76 lines
2.2 KiB
Markdown
Raw Permalink Normal View History

2026-08-14 18:02:25 +02:00
# Continuer le developpement sur Debian
## Prerequis
Installer Docker Engine, le module Compose, `make`, `openssl` et Git. Ajouter
l'utilisateur de developpement au groupe Docker, puis ouvrir une nouvelle
session.
## Premier demarrage
Depuis la racine du projet :
```bash
chmod +x scripts/init-debian.sh docker/build-release.sh
make init
make config
make dev
```
L'application est disponible sur `http://127.0.0.1:5080`. Le script
d'initialisation affiche le jeton necessaire au premier acces au wizard. Le
code source est monte dans le conteneur et les modifications sont rechargees
automatiquement.
Commandes courantes :
```bash
make logs
make test
make stop
```
## Import du dump SQL conserve
Le fichier `gmao_db_dump.sql` est volontairement livre avec le dossier. Il peut
contenir des donnees operationnelles : ne pas publier le depot sans verifier
son contenu et ses droits d'acces.
Pour l'importer dans une base neuve, demarrer MariaDB puis executer :
```bash
docker compose up -d mariadb
docker compose exec -T mariadb sh -c \
'mariadb -u"$MARIADB_USER" -p"$MARIADB_PASSWORD" "$MARIADB_DATABASE"' \
< gmao_db_dump.sql
```
MariaDB demande le mot de passe `MARIADB_PASSWORD` genere dans `.env.docker`.
Ne pas rejouer le dump sur une base deja renseignee sans sauvegarde.
## Developpement et production
`docker compose up` charge automatiquement `docker-compose.override.yml` : les
sources locales sont montees et le rechargement automatique est actif.
La production ignore ce fichier de developpement :
```bash
./docker/build-release.sh
GMAO_VERSION="$(tr -d '\r\n' < VERSION)" docker compose -f docker-compose.yml up -d
```
Dans ce mode, le code est integre a l'image versionnee. Seuls MariaDB, les
sauvegardes, les televersements et les donnees d'execution restent dans des
volumes persistants.
## Contenu volontairement absent du dossier propre
- `.venv`, caches Python et caches de tests ;
- `.env` et `.env.docker` contenant les secrets de la machine Windows ;
- `_archive`, qui ne contient que les anciennes versions mises de cote ;
- donnees d'execution et televersements locaux.
Les fichiers `.sql`, les exemples de configuration, les migrations et les tests
sont conserves.