Files
noitu/.dockerignore
T
tiennm99 b2cad42b0c build: package the game as a container image and wire CI
One distroless image of about 25 MB carries the binary, the built frontend and
the derived dictionary. The 179 MB upstream release is downloaded in a builder
stage and never reaches the final image; the derived wordlist is copied in as
its own layer alongside its licence, attribution and notice, because CC BY-SA
4.0 applies wherever that data is distributed and an image is distribution.

FIXTURE_DICT=1 builds the same Dockerfile against the checked-in word sample,
so the image is built and smoke-tested on every push rather than only at
release. An image built only at release time is an image that breaks at release
time.

CI runs the Go suite under race detection, the frontend type check and tests,
the browser suite, and the image with its licence assertions. The wire contract
keeps its own workflow; the test steps it duplicated were removed from it.

docs/deployment.md covers configuration, the reverse-proxy settings that each
break the game in a way that looks like something else, and what a restart
costs.
2026-09-05 14:18:18 +07:00

23 lines
419 B
Plaintext

# Build artifacts and caches. Everything the image needs is built inside it,
# so anything copied from the host is a chance for a stale file to ship.
.git
.github
node_modules
web/node_modules
web/build
web/.svelte-kit
web/test-results
web/playwright-report
data/*.db
data/*.db-journal
data/*.db-wal
data/*.db-shm
noitu-server
noitu-server.exe
build-dictionary
build-dictionary.exe
plans
docs
*.md
!data/ATTRIBUTION.md