From db953de1839dd508bf55c08912d9b7497520bcd0 Mon Sep 17 00:00:00 2001 From: Ryan Malloy Date: Sat, 20 Jun 2026 07:43:08 -0600 Subject: [PATCH] Update prod IP and document git@ remote requirement --- CLAUDE.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CLAUDE.md b/CLAUDE.md index 922f5f4..5fc9076 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -31,7 +31,7 @@ The `.env` on the dev machine should use `spicebook.l.warehack.ing` — the `.l. ## Deployment to Production -Production runs on `warehack.ing` (149.28.126.25) behind caddy-docker-proxy. +Production runs on `warehack.ing` (64.177.113.31) behind caddy-docker-proxy. ```bash # 1. Push changes @@ -52,6 +52,7 @@ docker compose -f docker-compose.yml -f docker-compose.prod.yml logs --tail=20 ### Production environment notes - `.env` on the production server is NOT tracked in git — edit it directly on the server when adding new env vars +- The prod checkout's git remote must use the `git@` user: `git@git.supported.systems:warehack.ing/spicebook.git`. The scp-style `host:path` form defaults to the server's login user (`warehack-ing`) and gitea rejects it with `Permission denied (publickey)`. `ssh -A` forwards your local key through for the fetch. - `BACKEND_INTERNAL_URL=http://backend:8000` must be set for SSR server-side fetches (frontend talks to backend over Docker network) - `notebooks/user/` must be world-writable (chmod 777) because the backend runs as non-root user `spicebook` but the bind mount is owned by `warehack-ing` - The `@resvg/resvg-js` native binary requires `node:20-slim` (Debian glibc) — Alpine won't work