Le budget de toute la famille.
TribuBudget réunit parents, ados et enfants autour du budget du foyer, dans un espace privé, auto-hébergé, en français :
L’image contient tout : l’interface Angular et l’API Symfony servies par FrankenPHP sur le port 80, leur base PostgreSQL 16 et le planificateur des échéances. Aucun réglage : les secrets et la base sont créés au premier lancement.
| Tag | Contenu |
|---|---|
latest | Dernière version publiée |
0.3.0 | Profil ado avec ses propres comptes et demandes de remboursement, pointage des opérations, reste prévu fin du mois |
0.2.0 | Image tout-en-un (base intégrée, secrets créés au premier lancement), page d’installation avec code |
0.1.0 | Première version (base PostgreSQL séparée) |
Plateforme : linux/amd64.
docker run -d --name tribubudget --restart unless-stopped -p 8080:80 -v tribubudget:/data iemperor/tribubudget
services:
tribubudget:
image: iemperor/tribubudget:latest
container_name: tribubudget
restart: unless-stopped
ports:
- "8080:80"
environment:
APP_TIMEZONE: Europe/Paris
volumes:
- tribubudget_data:/data
# Laisse à la base le temps de s’arrêter proprement
stop_grace_period: 30s
volumes:
tribubudget_data:
docker compose up -d
/data (une minute au plus).docker logs tribubudget
docker exec tribubudget console app:setup:code)http://<serveur>:8080 : la page d’installation demande ce code, puis crée votre famille et votre
compte de parent. Ajoutez ensuite l’autre parent, les ados et les enfants depuis la page Famille.Le code empêche quelqu’un d’autre d’installer TribuBudget à votre place s’il atteint la page avant vous. Une instance accueille une famille : il n’y a pas d’inscription libre.
| Variable | Rôle |
|---|---|
APP_TIMEZONE | Fuseau de « aujourd’hui » : dates de l’argent de poche et des échéances (Europe/Paris) |
SCHEDULER_INTERVAL | Secondes entre deux passages du planificateur (3600) |
APP_SECRET, JWT_PASSPHRASE | Pour imposer vos secrets ; sinon créés au premier lancement dans /data/secrets |
DATABASE_URL | Pour utiliser votre propre PostgreSQL au lieu de la base intégrée |
/data| Dossier | Contenu |
|---|---|
postgres/ | La base de données |
secrets/ | Secrets créés au premier lancement (lisibles par root seulement) |
jwt/ | Clés de signature des sessions |
Sauvegardez ce volume. Pour un export de la base :
docker exec tribubudget su-exec postgres pg_dump tribubudget > tribubudget.sql
L’image sert en HTTP sur le port 80. Pour un accès depuis Internet, placez-la derrière un reverse proxy qui fournit le HTTPS (Caddy, Traefik, Nginx Proxy Manager…).
docker pull iemperor/tribubudget && docker rm -f tribubudget # puis la commande docker run ci-dessus
# ou : docker compose pull && docker compose up -d
Les migrations de la base sont jouées au démarrage.
Gardez votre compose de la 0.1.0 et ses variables (DATABASE_URL, APP_SECRET, JWT_PASSPHRASE) : avec
DATABASE_URL, l’image utilise votre base et ne démarre pas la sienne. Le service scheduler devient
facultatif (le planificateur tourne aussi dans le conteneur principal).
Content type
Image
Digest
sha256:c3d8b30b1…
Size
121.7 MB
Last updated
about 1 hour ago
docker pull iemperor/tribubudget