build: one image, nginx in front of the backend on loopback (closes #52)
check / check (push) Successful in 12s
check / check (push) Successful in 12s
The root Dockerfile builds the only image; Dockerfile.backend is gone. Its stages: lint, a Go stage that runs the tests and builds netwatch-server, the node stage, and an nginx runtime. nginx serves dist/ on 8080 and proxies /api/ and /.well-known/healthcheck to the backend on 127.0.0.1:8081. bin/entrypoint.sh starts both, turns TERM or INT into a stop of both, and exits non-zero when either exits on its own. The backend runs as user netwatch and keeps reports on the /data volume. New setting BIND_ADDRESS (empty: every interface). STOPSIGNAL is SIGTERM, since the nginx image's SIGQUIT would miss the entrypoint. script/docker is the org model verbatim. Model: opus-5-5
This commit was merged in pull request #62.
This commit is contained in:
@@ -23,6 +23,14 @@ latest run passes.
|
||||
|
||||
# Completed Steps
|
||||
|
||||
- 2026-09-28: one container image (issue #52): the root `Dockerfile` builds the
|
||||
only image, and `Dockerfile.backend` is gone. nginx serves the frontend on
|
||||
port 8080 and proxies `/api/` and `/.well-known/healthcheck` to the backend,
|
||||
which listens on `127.0.0.1:8081` in the same container; the new
|
||||
`BIND_ADDRESS` setting sets its listen address. `bin/entrypoint.sh` starts
|
||||
both, passes TERM and INT on to both, and exits non-zero when either exits on
|
||||
its own. The backend runs as user `netwatch` and stores reports on the `/data`
|
||||
volume. `script/docker` is the org model again
|
||||
- 2026-09-28: unified the gate (issue #16): the root `make check` covers the Go
|
||||
backend as well as the frontend, and the pre-commit hook with it; the backend
|
||||
moved onto scripts-to-rule-them-all (`backend/script/*`, `backend/Makefile` as
|
||||
|
||||
Reference in New Issue
Block a user