All checks were successful
Deploy to NAS / deploy (push) Successful in 34s
docker-compose.yml lives in infra repo; deployment docs belong in doc/. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
80 lines
1.6 KiB
Markdown
80 lines
1.6 KiB
Markdown
# 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)
|
|
|
|
```bash
|
|
sudo docker exec -it shared-postgres-1 psql -U postgres
|
|
```
|
|
|
|
```sql
|
|
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
|
|
|
|
```bash
|
|
sudo docker exec -it pamietnik-api-1 /createuser
|
|
```
|
|
|
|
---
|
|
|
|
## Logs & Wartung
|
|
|
|
```bash
|
|
# 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
|
|
```
|