aboutsummaryrefslogtreecommitdiff
path: root/docs/DEPLOY.md
diff options
context:
space:
mode:
authorAnders Betts <anders.betts@gmail.com>2026-09-18 10:35:11 +0200
committerAnders Betts <anders.betts@gmail.com>2026-09-18 10:35:11 +0200
commit1e5b4927e5ae1d542d51158eb995d4f4b5a8b1c5 (patch)
tree5d2b414abbe6550eaf403c6aa4b5f75eb703fa01 /docs/DEPLOY.md
parent7a0771215d9bd52dc9d6913abee56a9f62893d3e (diff)
downloadbokf-1e5b4927e5ae1d542d51158eb995d4f4b5a8b1c5.tar.gz
bokf-1e5b4927e5ae1d542d51158eb995d4f4b5a8b1c5.zip
deploy: --dev hot-reloads the daemon via docker cp + SIGHUPv0.1.14
- bokfd re-execs its own binary on SIGHUP, closing listeners/db first - scripts/deploy.sh --dev cross-builds and copies binaries into the running container, then verifies the reported version
Diffstat (limited to 'docs/DEPLOY.md')
-rw-r--r--docs/DEPLOY.md17
1 files changed, 17 insertions, 0 deletions
diff --git a/docs/DEPLOY.md b/docs/DEPLOY.md
index 8862fab..2964a19 100644
--- a/docs/DEPLOY.md
+++ b/docs/DEPLOY.md
@@ -50,6 +50,23 @@ to touch an already initialized database. Subsequent `scripts/deploy.sh`
runs update the image, tag and compose file, restart the daemon and wait for
the healthcheck.
+## Fast iteration (`--dev`)
+
+Normal deploys build an image and recreate the container. While developing,
+`scripts/deploy.sh --dev` skips the image entirely:
+
+- the gate (`make` + `make test`) still runs locally,
+- on an architecture mismatch the binaries are cross-compiled here
+ (`deploy/Dockerfile.cross`, ~20 s on a PC),
+- the binaries are copied into the running container with `docker cp`,
+- the daemon is reloaded with `SIGHUP`, which re-execs the binary in place
+ (in-memory sessions are lost, clients reconnect),
+- the version the daemon reports is verified against the tag.
+
+No image is built and the container is not recreated; a later normal deploy
+replaces the copied binaries. Use a descriptive tag, e.g.
+`scripts/deploy.sh --dev v0.2.0-rc1`.
+
## Deploying upgrades
```sh