develop #62

Merged
Aceless merged 5 commits from develop into main 2026-09-13 16:14:54 +00:00
Owner
No description provided.
rsync muss auf Runner und Docker-Host vorhanden sein, weil rsync ueber ssh
ein "rsync --server" auf der Gegenseite startet. Der neue Schritt
"Docker-Host pruefen" sammelt rsync, docker, Compose v2, curl sowie
Existenz und Schreibrechte des Zielverzeichnisses und meldet alles auf
einmal, bevor Dateien kopiert werden. Die Installation auf dem Runner
unterstuetzt jetzt auch apk und bricht mit klarer Meldung ab, wenn das
Job-Image keinen Paketmanager hat.

Die Remote-Schritte laufen ueber "ssh bash -s" mit Heredoc statt ueber
verschachtelt gequotete Einzeiler.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KD9ZTACwDQ9PJWfxL7EskK
Die docker-compose.yml enthielt Dev-Werte im Klartext, darunter
Datenbankpasswort und JWT-Secret, und musste fuer die Produktion
angepasst werden. Jetzt referenziert sie nur noch Variablen; dieselbe
Datei laeuft in Dev und Produktion, der Unterschied steckt allein in der
.env daneben. Die ist in .gitignore und im rsync-Ausschluss, wird also
einmal pro Host angelegt und von keinem Deployment beruehrt.

Pflichtwerte nutzen die Form ${VAR:?...}, damit compose abbricht statt
die API mit leerer Konfiguration zu starten. Der Schritt
"Docker-Host pruefen" meldet eine fehlende .env, bevor kopiert wird.

Der Compose-Projektname ist auf "weekbite" festgelegt, damit Container
und Volumes nicht am Ordnernamen haengen. Ausserdem bringt das Compose-
File nun restart: unless-stopped und das Volume fuer die hochgeladenen
Rezeptbilder mit, die sonst bei jedem Deployment verloren gingen.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KD9ZTACwDQ9PJWfxL7EskK
Das neue Volume auf /app/wwwroot/images verdeckt Dateien, die vorher in
der Schreibschicht des Containers lagen. Docker kopiert nur Image-Inhalte
in ein neues Volume.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KD9ZTACwDQ9PJWfxL7EskK
Die .env liegt neben der docker-compose.yml und damit auf dem Share, ist
also auch vom Windows-Explorer aus anlegbar. chmod 600 wirkt auf einem
CIFS-Mount nicht, dort entscheiden die Mount-Optionen.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KD9ZTACwDQ9PJWfxL7EskK
Sign in to join this conversation.
No description provided.