update
This commit is contained in:
63
AzA march 2026/intern_portal/README_DEPLOY.txt
Normal file
63
AzA march 2026/intern_portal/README_DEPLOY.txt
Normal file
@@ -0,0 +1,63 @@
|
||||
AzA Intern Portal – Deployment auf Hetzner
|
||||
==========================================
|
||||
|
||||
Ziel-URL: https://intern.aza-medwork.ch
|
||||
Server-Pfad: /root/aza-intern-portal
|
||||
|
||||
Voraussetzungen
|
||||
---------------
|
||||
- Docker und docker-compose auf dem Server
|
||||
- Caddy als Reverse-Proxy (bestehend)
|
||||
- DNS A-Record: intern.aza-medwork.ch -> Server-IP (178.104.51.177)
|
||||
|
||||
Schritte
|
||||
--------
|
||||
1. Backup erstellen (vor Deploy):
|
||||
mkdir -p /root/backups/aza_intern_portal_predeploy_YYYYMMDD_HHMMSS
|
||||
cp -a /root/aza-intern-portal /root/backups/.../ (falls vorhanden)
|
||||
|
||||
2. Verzeichnis anlegen und Dateien hochladen:
|
||||
mkdir -p /root/aza-intern-portal
|
||||
(rsync/scp des intern_portal-Inhalts)
|
||||
|
||||
3. .env anlegen (Werte NICHT ins Repo committen):
|
||||
cp .env.example .env
|
||||
AZA_INTERN_SESSION_SECRET=<zufälliger 64-Zeichen-Hex-String>
|
||||
AZA_INTERN_ADMIN_USER=<admin-benutzername>
|
||||
AZA_INTERN_ADMIN_PASSWORD=<sicheres-passwort>
|
||||
|
||||
4. Docker starten:
|
||||
cd /root/aza-intern-portal
|
||||
docker compose build
|
||||
docker compose up -d
|
||||
|
||||
5. Healthcheck:
|
||||
curl -s http://127.0.0.1:8088/health
|
||||
|
||||
6. Caddy (nur wenn DNS bereit):
|
||||
- Caddyfile sichern: cp /etc/caddy/Caddyfile /root/backups/.../Caddyfile.bak
|
||||
- Snippet aus Caddyfile.snippet ergänzen
|
||||
- caddy validate --config /etc/caddy/Caddyfile
|
||||
- systemctl reload caddy
|
||||
|
||||
7. Im Browser testen: https://intern.aza-medwork.ch
|
||||
|
||||
Wichtig
|
||||
-------
|
||||
- /root/aza-app (produktive AzA-App) NICHT verändern
|
||||
- Portal läuft nur auf 127.0.0.1:8088, extern nur via Caddy
|
||||
- Keine Patientendaten, API-Keys oder Passwörter hochladen
|
||||
|
||||
Backup (manuell)
|
||||
----------------
|
||||
Regelmässig sichern:
|
||||
/data/intern.db (Docker-Volume aza_intern_data)
|
||||
/data/uploads/
|
||||
|
||||
Beispiel:
|
||||
docker compose exec aza-intern ls /data
|
||||
docker cp aza-intern-portal:/data/intern.db ./backups/intern_YYYYMMDD.db
|
||||
|
||||
2FA
|
||||
---
|
||||
Für eine spätere Version vorgesehen. Session-Cookies sind httpOnly (Starlette SessionMiddleware).
|
||||
Reference in New Issue
Block a user