I cant
Some checks failed
Build and Deploy / changes (push) Successful in 1s
Build and Deploy / deploy-lean (push) Failing after 1m1s
Build and Deploy / deploy (push) Successful in 3m31s

This commit is contained in:
2026-10-06 00:58:18 +02:00
parent e2c2c66d7f
commit 0f7c765d61
4 changed files with 107 additions and 75 deletions

View File

@@ -64,13 +64,14 @@ its theme (live, same page), and the Goals/Messages pane.
`lean/Dockerfile` still builds lean4web (upstream's real Lean + Mathlib per session;
`--build-arg LEAN4WEB_REF=<tag|branch>` pins it) and runs its websocket server on port 8080;
the compose `lean` service runs it (image `git.aranroig.com/syndria98/mathew-lean:latest` —
CI builds and pushes it, and deploys lean, only when `lean/**` changes: `deploy-lean.yml`;
the regular deploy just pulls the tag). Upstream asks for a dedicated machine, so the build
is **multi-stage**: dev tooling stays in the builder, and the pushed image is a slim runtime
of node + elan toolchain + built client + Mathlib's compiled cache (~11GB — the cache is
the bulk; upstream's second demo project `Stable` is dropped, its extra ~3GB toolchain was
unused). `--build-arg BAKE_MATHLIB=false` ships Mathlib *out* of the image (~4GB) into a
`.lake` volume, filled once at first start by `lean/entrypoint.sh` — see lean/README.md.
CI pushes it, and deploys lean, only when `lean/**` changes: `.gitea/workflows/deploy.yml`
gates its `deploy-lean` job on the pushed diff; the app deploy just pulls the tag). Upstream
asks for a dedicated machine, so the build is **multi-stage**: dev tooling stays in the
builder, and the pushed image is a slim runtime of node + elan toolchain + built client +
Mathlib's compiled cache (~11GB — the cache is the bulk; upstream's second demo project
`Stable` is dropped, its extra ~3GB toolchain was unused). `--build-arg BAKE_MATHLIB=false`
ships Mathlib *out* of the image (~4GB) into a `.lake` volume, filled once at first start
by `lean/entrypoint.sh` — see lean/README.md.
It runs `NO_BWRAP=true` — bubblewrap cannot nest in a container, so Docker itself is the
sandbox; whoever reaches the port can run Lean. Build/run, TLS, security and projects:
`lean/README.md`.