Commit Graph

56 Commits

Author SHA1 Message Date
ce1a1ee757 Mount docker CLI and compose plugin into gitea-runner
Some checks failed
Deploy with Docker Compose / deploy (push) Failing after 0s
The act_runner container had the Docker socket but not the docker
binary, so deploy workflow steps using docker compose failed.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-07 13:00:50 +01:00
a967a249c2 Add base url to new containers
Some checks failed
Deploy with Docker Compose / deploy (push) Failing after 0s
2026-04-07 12:57:16 +01:00
8a6e34dd69 Fix gitea-runner compatibility for deploy workflow
Some checks failed
Deploy with Docker Compose / deploy (push) Failing after 1s
Mount the deploy directory at the same absolute path in the runner
container so docker compose bind mounts resolve correctly on the host
Docker daemon. Add git safe.directory config to avoid ownership errors
when the runner (root) operates on host-owned files.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-07 12:45:52 +01:00
108f58e527 Add UptimeKuma, Searxng, Wallabag services
Some checks failed
CI/CD / Deploy (push) Has been cancelled
CI/CD / Build Frontend (push) Has been cancelled
CI/CD / Build & Test Backend (push) Has been cancelled
Deploy with Docker Compose / deploy (push) Has been cancelled
- Add uptime-kuma, searxng, and wallabag Docker services with Postgres integration for wallabag
- Add nginx reverse proxy location blocks for /uptime-kuma/, /searxng/, /wallabag/ in both prod and dev templates
- Update entrypoint.sh envsubst to include new HOST/PORT vars
- Add Vite dev proxy entries for all three services
- Update gitea-runner config: add self-hosted label and allow all volumes
- Add Gitea CI/CD workflow

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-07 12:14:56 +01:00
01adee7941 Revert quartz changes
All checks were successful
Deploy with Docker Compose / deploy (push) Successful in 9s
2026-04-06 13:58:57 +01:00
fa79fe9cdb Fix path
All checks were successful
Deploy with Docker Compose / deploy (push) Successful in 9s
2026-04-06 13:46:36 +01:00
b6623de23a Add Quartz service for serving Obsidian notes at /notes/
All checks were successful
Deploy with Docker Compose / deploy (push) Successful in 2m28s
Replaces the custom Go/Vue notes system with Quartz v4, a polished
static site generator for Obsidian vaults. Mounts OBSIDIAN_DIR as the
Quartz content directory and serves it at /notes/ with hot-reload via
`npx quartz build --serve`.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-06 13:27:10 +01:00
d215333128 Add admin UI for managing radio fallback music
All checks were successful
Deploy with Docker Compose / deploy (push) Successful in 3m44s
Upload, list, and delete fallback music files from the admin page.
Backend handlers validate file type/size and prevent path traversal.
Nginx max body size increased to 50M to support large audio files.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-30 16:19:10 +01:00
75cede3b1b Fix security vulnerabilities across backend, frontend, and infra
All checks were successful
Deploy with Docker Compose / deploy (push) Successful in 4m44s
- Fix auth bypass in UpdatePost/DeletePost (missing return after auth check)
- Remove Spotify access token from callback response
- Replace internal error messages with generic responses in all handlers
- Harden GraphQL: complexity limit, disable playground/introspection in prod
- Add security headers (X-Frame-Options, HSTS, etc.) to nginx
- Disable Hasura console/dev mode in production
- Add DOMPurify sanitization to Markdown component
- Fix cookie removal to use correct domain/path from auth config
- Fix nil dereference in rowing handler when Claude API errors
- Fix wildcard CORS on stamp endpoint
- Pin nginx and certbot Docker image versions

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-29 23:59:10 +01:00
091bfcaef6 Add Hasura GraphQL Engine container with nginx proxy
All checks were successful
Deploy with Docker Compose / deploy (push) Successful in 1m31s
Adds Hasura v2.44.0 service connected to the existing Postgres database,
proxied through nginx at /hasura/ with WebSocket support for the console.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-29 20:06:19 +01:00
d3d3269d49 Extract Vue frontend into separate container and add stp_wasm crate
All checks were successful
Deploy with Docker Compose / deploy (push) Successful in 4m58s
Move Vue app from nginx/vue/ to top-level vue/ with its own Dockerfile,
update docker-compose configs and nginx proxy to serve from the new
container, and add initial Rust WASM crate (stp_wasm). Also fix .gitignore
to exclude Rust target/ directories.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-25 16:40:45 +00:00
81cb2bc4b5 Move Gitea secrets to environment variables
All checks were successful
Deploy with Docker Compose / deploy (push) Successful in 41s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 17:46:18 +00:00
469a225860 Add fallback music to icecast server
Some checks failed
Deploy with Docker Compose / deploy (push) Has been cancelled
2026-03-10 12:58:53 +00:00
d7b76e4742 open port 3000 for gitea runner
Some checks failed
Deploy with Docker Compose / deploy (push) Failing after 2m36s
2026-03-09 17:55:10 +00:00
8e50537333 Get AI to fix vunerabilities in site
Some checks failed
Deploy with Docker Compose / deploy (push) Has been cancelled
2026-03-09 14:12:29 +00:00
4c396ef30f Add file upload to website and integrate into chat
Some checks failed
Deploy with Docker Compose / deploy (push) Has been cancelled
2026-03-09 13:47:38 +00:00
26c7422e34 adding gitea-runner service 2026-02-17 18:10:19 +00:00
d849b606ec fix certbot env vars 2026-02-16 15:07:44 +00:00
46a9da4c90 gitea runner 2026-02-16 14:52:33 +00:00
b506bae515 fix gitea 2026-02-16 13:57:28 +00:00
11ad0b5a83 reverse proxy to gitea 2026-02-16 13:21:11 +00:00
050a38a76f Merge branch 'main' of /home/adamf/repos/web_server 2026-02-16 12:56:23 +00:00
bc43e9ed02 add gitea 2026-02-16 12:52:08 +00:00
5c69a1d0a7 adding gitea 2026-02-16 11:46:49 +00:00
bf0022eb20 extra certbot container removed 2026-01-25 20:09:49 +00:00
edfaf304cf fix nginx logs 2026-01-25 16:03:53 +00:00
e384223f13 added backend logs 2026-01-18 10:34:31 +00:00
282a286958 adding nginx log volume 2026-01-18 08:57:25 +00:00
3e56b7b12f fixed file path 2026-01-12 16:06:06 +00:00
0a3c0dd8dd added obsidian api 2026-01-12 15:46:23 +00:00
59bc3d494f db volume for persistent storage 2025-12-10 06:24:22 +00:00
508b30f21b remove html and swapping to vue 2025-11-25 16:04:57 +00:00
ae37643334 adding token to volume 2025-11-24 16:38:20 +00:00
de9b80d3a4 added port sharing and add to network 2025-11-24 16:32:26 +00:00
077d69d44b rename 2025-11-24 16:29:22 +00:00
89e0c5b425 correct platform 2025-11-24 13:22:24 +00:00
b0918d6499 new icecast image 2025-11-24 13:17:30 +00:00
4de50b4b3f adding icecast 2025-11-24 13:07:51 +00:00
b5f72a9ada adding icecast radio 2025-11-24 12:57:23 +00:00
d8ca109c45 removed need for DOMAIN_WWW and use www. instead 2025-11-21 12:50:57 +00:00
f4ab7493f0 added www domain cert 2025-11-21 12:14:45 +00:00
df2beb7b1d adding backend port env var to nginx 2025-11-20 22:13:58 +00:00
dc09ddefca fixing certbot 2025-11-20 21:56:53 +00:00
27e1339a92 environment variables for config & dependency 2025-11-20 21:45:31 +00:00
9534678dba moving to environment variables 2025-11-20 19:51:15 +00:00
807dea6854 add usage of environment variables 2025-11-20 19:35:58 +00:00
cc56cd43e5 need network 2025-11-20 18:42:51 +00:00
22d0cb7f79 adding environment variables 2025-11-20 18:04:57 +00:00
10b5dfabfd rename db 2025-11-18 23:57:27 +00:00
ac098ffb55 added postgres db 2025-11-16 20:56:36 +00:00