- Python 100%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| caddy | ||
| forgejo | ||
| matrix | ||
| nextcloud | ||
| onlyoffice | ||
| pantalaimon | ||
| plausible | ||
| searxng | ||
| .gitignore | ||
| manage_stacks.py | ||
| README.md | ||
Intranet-Server Konfiguration
Dieses Repository enthält die Docker-Compose-Stacks und Konfigurationen des
Intranet-Servers (AGiL). Alle Dienste laufen hinter einem gemeinsamen Caddy-Reverse-Proxy
und sind über Subdomains von alltagshelferei.de erreichbar.
Architektur
┌──────────────┐
Internet ──────────►│ Caddy │ (Reverse-Proxy, TLS via Let's Encrypt)
│ (Port 80/443)│
└──────┬───────┘
│ Docker-Netzwerk: intranet-net
┌─────────┬───────────┼───────────┬───────────┬─────────┐
▼ ▼ ▼ ▼ ▼ ▼
SearXNG Plausible Matrix OnlyOffice Nextcloud Forgejo
Alle Container hängen am externen Docker-Netzwerk intranet-net.
Der Caddy-Proxy leitet Subdomain-Anfragen an die jeweiligen Container-Namen weiter.
Subdomains & Dienste
| Subdomain | Dienst | Container |
|---|---|---|
iris-agent.alltagshelferei.de |
Matrix-Server (Synapse) | matrix-server:8008 |
leipzig.alltagshelferei.de |
Nextcloud + Talk Signaling | nextcloud-app:80 |
s.alltagshelferei.de |
SearXNG Metasuchmaschine | searxng-app:8080 |
analytics.alltagshelferei.de |
Plausible Analytics | plausible-app:8000 |
office-agil-nc.alltagshelferei.de |
OnlyOffice | onlyoffice-documentserver:80 |
giteo-2026.alltagshelferei.de |
Forgejo (Git-Server) | forgejo-app:3000 |
Hinweis: Forgejo-SSH läuft auf Port 53535 (nicht Standard-22):
git clone ssh://git@giteo-2026.alltagshelferei.de:53535/<user>/<repo>.git
Konfiguration der Secrets (.env)
Die Passwörter und Secrets stehen nicht in den docker-compose.yml-Dateien, sondern
in einer .env-Datei pro Stack, die von Git ignoriert wird.
Ersteinrichtung eines Stacks:
cd /opt/intranet/<stack>
cp .env.example .env # Vorlage kopieren
$EDITOR .env # Werte eintragen
Jeder Stack mit Secrets hat eine .env.example-Vorlage mit den benötigten Variablen
(Werte leer). Die echten .env-Dateien werden nie committet.
Verwaltung: manage_stacks.py
Alle Stacks lassen sich zentral starten/stoppen:
python3 manage_stacks.py ps # Status aller Stacks
python3 manage_stacks.py up # Alle Stacks starten (Caddy zuerst)
python3 manage_stacks.py down # Alle Stacks stoppen (Caddy zuletzt)
python3 manage_stacks.py pull # Images aktualisieren
Die Startreihenfolge steht in der COMPOSE_STACKS-Liste in manage_stacks.py.
Sicherheitshinweise
.env-Dateien enthalten echte Secrets und werden niemals committet.nextcloud/signaling/server.confundnextcloud/maps-main.jssind Daten-/Generated-Dateien und bleiben ignoriert.- Container-Daten-Verzeichnisse (
caddy/data,caddy/config,forgejo/db, Logs, DBs) sind bewusst nicht im Repo.