-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
64 lines (62 loc) · 2.59 KB
/
Copy pathdocker-compose.yml
File metadata and controls
64 lines (62 loc) · 2.59 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
services:
finance-fox:
# Fertiges Image von ghcr.io (wird bei Tags v* per GitHub Action gebaut):
# docker compose pull && docker compose up -d
# Lokal bauen (z. B. Entwicklung oder eigene Änderungen):
# docker compose up -d --build
image: ghcr.io/grimbixcode/finance-fox:latest
build: .
container_name: finance-fox
ports:
- "8080:3000" # links: gewünschter Port auf dem Heimserver
environment:
# Unbedingt ändern! Langer zufälliger String.
- JWT_SECRET=${JWT_SECRET:-please-change-me-to-a-long-random-string}
# Basis-URL für Einladungs-/Reset-Links (so wie ihr die App aufruft)
- PUBLIC_URL=${PUBLIC_URL:-http://localhost:8080}
# Optional: Secure-Flag des Session-Cookies erzwingen (Default: https in PUBLIC_URL)
# - COOKIE_SECURE=false
- DATABASE_URL=file:/app/data/finance-fox.db
# Beleg-Anhänge liegen per Default unter /app/data/attachments
# (selbes Volume) — nur bei abweichendem Speicherort setzen:
# - ATTACHMENTS_DIR=/app/data/attachments
volumes:
- finance-fox-data:/app/data
restart: unless-stopped
# ── Optional: HTTPS im Heimnetz ────────────────────────────────
# Nur nötig für den Offline-Betrieb der App: Service Worker laufen
# ausschließlich in einem „secure context" (https:// oder localhost) —
# http://192.168.x.x:8080 genügt nicht.
#
# FF_PUBLIC_HOST=192.168.1.10 docker compose --profile tls up -d
#
# Danach läuft die App unter https://192.168.1.10 (Port 443). Das
# Root-Zertifikat von Caddys interner CA muss einmalig auf jedes Gerät —
# siehe README, Abschnitt „HTTPS im Heimnetz". Wer schon einen eigenen
# Reverse-Proxy mit gültigem Zertifikat betreibt, lässt dieses Profil aus.
#
# Achtung Portainer & Co.: Der Bind-Mount unten setzt voraus, dass das
# `Caddyfile` neben dieser Datei liegt. Wo nur ein Compose-File eingefügt
# werden kann, gibt es in der README unter „Portainer" einen Stack, der die
# Konfiguration über `configs` inline führt.
caddy:
image: caddy:2-alpine
container_name: finance-fox-caddy
profiles: ["tls"]
ports:
- "80:80"
- "443:443"
environment:
# Adresse, unter der ihr die App aufruft (IP oder Name im Heimnetz)
- FF_PUBLIC_HOST=${FF_PUBLIC_HOST:-localhost}
volumes:
- ./Caddyfile:/etc/caddy/Caddyfile:ro
- caddy-data:/data
- caddy-config:/config
depends_on:
- finance-fox
restart: unless-stopped
volumes:
finance-fox-data:
caddy-data:
caddy-config: