EDRDG's licence asks of a server showing its dictionaries that it update them at least monthly. The instance now does it alone: a `dictionaries` service in compose, built from the curator (halkyon_learn_curator/ Dockerfile, its own unprivileged user 10001, 1 GB at most), runs `curate update --every 7`, downloading EDRDG's files of the day once its files are a week old and replacing them in a volume the server mounts read-only. The curator never enters the server's image or process (decided 2026-10-09: a container of its own, weekly). The server rereads the folder daily at 04:07 (DictionaryReloadFutureCall), loading what changed, and loads now run one at a time. redeploy.sh builds both images. An operator who'd rather supply the files removes the service and mounts deploy/dictionaries/ into the server, as compose.yaml says. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MMm7usAo6q9ZZRoPkWjoxi Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
23 lines
581 B
Text
23 lines
581 B
Text
# The Docker build context is the repository root. Nothing secret, local or bulky
|
|
# goes into it: the server's and the curator's Dockerfiles copy their whole package folders.
|
|
|
|
# Secrets and local state
|
|
halkyon_learn_server/config/passwords.yaml
|
|
# Dictionary files: tens of megabytes, mounted on an instance, never built in
|
|
halkyon_learn_server/dictionaries/
|
|
deploy/dictionaries/
|
|
halkyon_learn_server/.serverpod/
|
|
deploy/.env
|
|
**/*.log
|
|
|
|
# Tooling and build output
|
|
.git/
|
|
**/.dart_tool/
|
|
**/build/
|
|
.vscode/
|
|
.claude/
|
|
|
|
# Not needed to build the server
|
|
halkyon_learn_flutter/
|
|
docs/
|
|
NEXT.md
|