AI-aliaser: sidelinja/rutine → synops/low, sidelinja/resonering → synops/high. Fire nivåer i LiteLLM: low/medium/high/extreme. Oppdatert i: LiteLLM config, PG ai_job_routing, all Rust-kode (maskinrommet + 5 CLI-verktøy). Domener: sidelinja.org → synops.no i fallback-URLer, health-sjekker, LiveKit WSS, bandwidth-logger, docs/erfaringer, docs/setup, reference/server-state, .env.example. Docker container-navn (sidelinja-*) beholdes — styrt av COMPOSE_PROJECT_NAME i /srv/synops/.env, endres separat ved behov. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
73 lines
3 KiB
Markdown
73 lines
3 KiB
Markdown
# Server-tilstand ved overgang fra Sidelinja v1 (mars 2025)
|
|
|
|
Denne filen dokumenterer hva som kjører på serveren ved overgangen.
|
|
Slettes når Synops er oppe og stabilt.
|
|
|
|
## Kjørende containere (docker-compose)
|
|
|
|
| Container | Image | Rolle | Beholdes? |
|
|
|---|---|---|---|
|
|
| postgres | postgres:16 | Database (sidelinja, authentik, forgejo) | JA |
|
|
| caddy | caddy:2 | Reverse proxy, HTTPS | JA |
|
|
| authentik-server | goauthentik/server:latest | SSO | JA |
|
|
| authentik-worker | goauthentik/server:latest | SSO bakgrunn | JA |
|
|
| redis | redis:7-alpine | Cache for Authentik | JA |
|
|
| forgejo | forgejo:10 | Git | JA |
|
|
| ~~spacetimedb~~ | ~~clockworklabs/spacetime:latest~~ | ~~Sanntid~~ | FJERNET (mars 2026) |
|
|
| web | sidelinja-web (bygget) | SvelteKit v1 | FJERNES |
|
|
| worker | sidelinja-worker (bygget) | Rust worker v1 | FJERNES |
|
|
| ai-gateway | litellm:main-stable | AI-ruter | BEHOLDES (uavhengig av app) |
|
|
|
|
## Caddyfile (fungerende)
|
|
- auth.synops.no → authentik-server:9000
|
|
- git.synops.no → forgejo:3000
|
|
- synops.no → web:3000 + /media/* (filservering) + JSON access log
|
|
- vegard.info → placeholder
|
|
- ~~rt.synops.no → spacetimedb:3000~~ (fjernet)
|
|
|
|
## PG init-script
|
|
`/srv/synops/config/postgres/init/01-create-databases.sql`
|
|
Oppretter authentik og forgejo DB-brukere med hardkodede passord.
|
|
Disse passordene matcher .env-variablene og er allerede kjørt — scriptet
|
|
kjøres kun ved *første* PG-oppstart.
|
|
|
|
## Dockerfiles (referanse)
|
|
### web/Dockerfile
|
|
- node:20-alpine, to-stegs bygg
|
|
- ~~VITE_SPACETIMEDB_URL som build-arg~~ (fjernet)
|
|
- `npm run build` → `node build` på port 3000
|
|
|
|
### worker/Dockerfile
|
|
- rust:1-bookworm, to-stegs bygg med dependency-caching
|
|
- debian:bookworm-slim runtime med ca-certificates
|
|
- Binary: sidelinja-worker
|
|
|
|
## .env-variabler på server
|
|
AUTHENTIK_CLIENT_ID, AUTHENTIK_CLIENT_SECRET, AUTHENTIK_ISSUER,
|
|
AUTHENTIK_POSTGRESQL_HOST, AUTHENTIK_POSTGRESQL_NAME, AUTHENTIK_POSTGRESQL_PASSWORD,
|
|
AUTHENTIK_POSTGRESQL_USER, AUTHENTIK_SECRET_KEY, AUTH_SECRET,
|
|
COMPOSE_PROJECT_NAME, DATABASE_URL, DOMAIN_AUTH, DOMAIN_SIDELINJA, DOMAIN_VEGARD,
|
|
FORGEJO_DB_PASSWD, LITELLM_MASTER_KEY, LIVEKIT_API_KEY, LIVEKIT_API_SECRET,
|
|
OPENROUTER_API_KEY, POSTGRES_DB, POSTGRES_PASSWORD, POSTGRES_USER
|
|
|
|
## Migrasjoner (v1, 15 stk)
|
|
0001-0015: initial_schema, kanban, calendar, notes, meldingsboks,
|
|
warmup_config, ai_config, ai_prompts, provider_extra_params, openrouter_only,
|
|
api_keys_toggle, api_keys_values, drop_priority_unique, workspace_ai_prompts,
|
|
usage_action_column. Pluss seed_dev.sql.
|
|
|
|
Synops starter med nytt skjema (noder+edges). Disse migreringene er irrelevante.
|
|
|
|
## Crontab
|
|
Ingen crontab konfigurert (backup-strategi er dokumentert men ikke implementert).
|
|
|
|
## Mappestruktur /srv/synops/
|
|
```
|
|
config/authentik/ config/caddy/ config/postgres/init/
|
|
data/authentik/ data/caddy/ data/forgejo/ data/postgres/ data/redis/ data/spacetimedb/
|
|
logs/caddy/
|
|
media/ (podcast-filer)
|
|
server/ (git-klon av v1-repoet)
|
|
docker-compose.yml
|
|
.env
|
|
```
|