Add README documenting untracked files and sync-secrets script
Some checks failed
Deploy with Docker Compose / deploy (push) Failing after 1s

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-04-07 13:39:00 +01:00
parent 4edc5b1b22
commit 258d97757c
2 changed files with 55 additions and 0 deletions

54
README.md Normal file
View File

@@ -0,0 +1,54 @@
# web_server
Dockerized multi-service personal website.
## Untracked Files Requiring Manual Setup
These files are git-ignored and must be created or obtained manually before running the stack.
### `.env`
Environment variables used by all services. No example file is provided — see `docker-compose.yml` for the full list of referenced variables (database credentials, hostnames, secrets, Spotify OAuth, Gitea tokens, etc.).
### `gitea/config/app.ini`
Gitea application config. Copy from the template and fill in secrets:
```sh
cp gitea/config/app.ini.template gitea/config/app.ini
```
Populate `LFS_JWT_SECRET`, `SECRET_KEY`, `INTERNAL_TOKEN`, `JWT_SECRET`, and the database `PASSWD`.
### `searxng/settings.yml`
SearXNG settings. Copy from the template:
```sh
cp searxng/settings.yml.template searxng/settings.yml
```
The template uses environment variable substitution (`${BASE_URL}`, `${SEARXNG_SECRET_KEY}`) at container build time, so this file is generated by the Dockerfile's `entrypoint.sh`. If running outside Docker, fill in values manually.
### `certbot/conf/` and `certbot/www/`
Let's Encrypt certificate storage. In production, certbot populates these automatically on first run. For local/dev use, either:
- Use dev mode (`docker-compose.dev.yml`) which skips SSL, or
- Place self-signed certs in `certbot/conf/live/localhost/` (`fullchain.pem`, `privkey.pem`).
### `backend/token/`
Directory where the backend persists Spotify OAuth tokens (`spotify_token.json`). Created automatically at runtime — no manual setup needed, but the directory is git-ignored so it won't exist on a fresh clone. Docker mounts `./backend/token/:/backend/token` so the directory is created by Docker.
### `icecast2/fallback_music/`
MP3 files used as fallback music for the Icecast2/Liquidsoap radio stream. Place at least one `.mp3` file here. A `.gitkeep` is tracked to preserve the directory.
### `gitea-runner/act_runner`
The Gitea Actions runner binary. Download from [Gitea's releases](https://gitea.com/gitea/act_runner/releases) for your platform and place in `gitea-runner/`.
### `gitea-runner/.runner`
Runner registration state file. Generated automatically when `gitea-runner/run.sh` runs for the first time (requires `GITEA_RUNNER_REGISTRATION_TOKEN` in `.env`).