G03: web server modes, port check, proxy configs, doctor; 0.6.0-rc.4 #13

Merged
oliver.maklott merged 1 commit from g03-web-modes into main 2026-10-02 18:25:47 +00:00

aivopod-app Plan 7, G03 (bundle part: aivopod-app #77).

  • install --proxy eigenstaendig|hinter-proxy (asked, default eigenstaendig); behind a proxy no TLS question, one local port from 8080
  • Port check: busy ports detected (bind test), next free suggested (8080/8443 when 80/443 are busy; 8081 for a second instance), ports of other instances count even when stopped; a busy port given as an option is refused with a suggestion
  • proxy/ with server blocks for nginx, Apache and Caddy (four hosts, forwarded headers, 100 MB, HTTP→HTTPS); apcmd proxy-config regenerates; nginx block played through against our Caddy in hinter-proxy mode
  • apcmd configure --proxy … switches the mode without reinstalling (own ports count as free; back to eigenstaendig needs --tls)
  • doctor: mode; behind a proxy Compose ≥ 2.24.4, proxy/ present, our CSP and nosniff reach the browser
  • Rollback keeps compose.hinter-proxy.yml; fixture bundle 0.2.0-test.3 from aivopod-app #77
  • Help, README, D008, version 0.6.0-rc.4; deno task check green (75 tests)

🤖 Generated with Claude Code

aivopod-app Plan 7, G03 (bundle part: aivopod-app #77). - [x] `install --proxy eigenstaendig|hinter-proxy` (asked, default eigenstaendig); behind a proxy no TLS question, one local port from 8080 - [x] Port check: busy ports detected (bind test), next free suggested (8080/8443 when 80/443 are busy; 8081 for a second instance), ports of other instances count even when stopped; a busy port given as an option is refused with a suggestion - [x] `proxy/` with server blocks for nginx, Apache and Caddy (four hosts, forwarded headers, 100 MB, HTTP→HTTPS); `apcmd proxy-config` regenerates; nginx block played through against our Caddy in hinter-proxy mode - [x] `apcmd configure --proxy …` switches the mode without reinstalling (own ports count as free; back to eigenstaendig needs `--tls`) - [x] `doctor`: mode; behind a proxy Compose ≥ 2.24.4, `proxy/` present, our CSP and nosniff reach the browser - [x] Rollback keeps `compose.hinter-proxy.yml`; fixture bundle 0.2.0-test.3 from aivopod-app #77 - [x] Help, README, D008, version 0.6.0-rc.4; `deno task check` green (75 tests) 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Web server modes: install --proxy, configure, proxy-config, port check, doctor; 0.6.0-rc.4 (aivopod-app Plan 7, G03)
All checks were successful
check / check (pull_request) Successful in 6s
check / check (push) Successful in 6s
release / release (push) Successful in 12s
712071941b
install asks for the mode (eigenstaendig or hinter-proxy) and checks the
ports, suggesting the next free ones; ports of other instances count as
taken. Behind a proxy our Caddy gets one local port and proxy/ holds
server blocks for nginx, Apache and Caddy. configure switches the mode of
an installation, proxy-config writes the blocks again, doctor checks
Compose 2.24.4, proxy/ and that our headers reach the browser (D008).
Fixture bundle 0.2.0-test.3 carries compose.hinter-proxy.yml.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
aivopod/apcmd!13
No description provided.