Files
pamietnik/infra/README.md
Christoph K. 156917ece1
All checks were successful
Deploy to NAS / deploy (push) Successful in 34s
Slim down infra/: keep only project-specific deployment docs
General infra setup (NAS, act_runner, Gitea Actions reference)
moved to separate infra repo.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-07 18:49:17 +02:00

1.6 KiB

Deployment

Voraussetzungen

  • Synology NAS mit laufendem shared PostgreSQL Stack (/volume2/docker/shared/)
  • act_runner registriert und online
  • Siehe Infra-Repo für Setup-Details

Datenbank einrichten (einmalig)

sudo docker exec -it shared-postgres-1 psql -U postgres
CREATE DATABASE pamietnik;
CREATE USER pamietnik WITH PASSWORD '<passwort>';
GRANT ALL PRIVILEGES ON DATABASE pamietnik TO pamietnik;
GRANT ALL ON SCHEMA public TO pamietnik;
\q

Gitea Secrets & Variables

Repository → Einstellungen → Actions → Secrets:

Secret Wert
DB_PASSWORD Passwort des pamietnik DB-Users

Repository → Einstellungen → Actions → Variables:

Variable Wert
DEPLOY_DIR /volume2/docker/pamietnik
DB_USER pamietnik
DB_NAME pamietnik
APP_PORT 9050

Deploy

Push auf main triggert automatisch den Workflow (.gitea/workflows/deploy.yml):

  1. Code nach /volume2/docker/pamietnik/ klonen/pullen
  2. .env mit DB-Credentials schreiben
  3. docker compose up --build -d
  4. Health check auf /healthz

App erreichbar unter: http://192.168.1.4:9050


Ersten User anlegen

sudo docker exec -it pamietnik-api-1 /createuser

Logs & Wartung

# Logs
sudo docker compose -f /volume2/docker/pamietnik/docker-compose.yml logs -f

# Neustart
sudo docker compose -f /volume2/docker/pamietnik/docker-compose.yml restart

# Backup
sudo docker exec shared-postgres-1 pg_dump -U postgres pamietnik \
  > /volume2/docker/shared/backup_$(date +%Y%m%d)_pamietnik.sql