You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+40-9Lines changed: 40 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -149,8 +149,6 @@ tubechecker:
149
149
150
150
Add `URL_TUBECHECKER=channels.yourdomain.com` to your `.env` file.
151
151
152
-
> **Note:** The web UI has no built-in authentication. If it is publicly accessible, protect it with a Traefik `basicauth` middleware or equivalent.
153
-
154
152
---
155
153
156
154
## Build from Source
@@ -167,13 +165,46 @@ docker compose up -d --build
167
165
168
166
All settings can be configured from the **Settings** view in the UI and are persisted to the database. Environment variables seed the database on first run and act as defaults — subsequent UI changes take precedence.
The web UI has no authentication by default. Set `AUTH_USERNAME` and `AUTH_PASSWORD` to enable a login screen.
185
+
186
+
```yaml
187
+
environment:
188
+
- AUTH_USERNAME=admin
189
+
- AUTH_PASSWORD=your-secure-password
190
+
- AUTH_SECRET=<generated key>
191
+
```
192
+
193
+
**`AUTH_SECRET`** signs the session cookies. Without it a random secret is generated at startup, which means all sessions are invalidated whenever the container restarts. Generate a stable key with:
Or with OpenSSL if Python isn't available locally:
200
+
201
+
```bash
202
+
openssl rand -hex 32
203
+
```
204
+
205
+
Paste the output as the value of `AUTH_SECRET`.
206
+
207
+
> If only `AUTH_USERNAME`/`AUTH_PASSWORD` are set and `AUTH_SECRET` is omitted, the app still works — users just need to log in again after each restart.
0 commit comments