7ed388c69c973ff5319639abf1b520d63d7d43e4
Supersedes the prior 'name everything after the repo' guidance, which caused
container-name collisions at fleet scale. The dev's compose now names nothing
repo-specific; the deploy layer injects identity and host paths.
deploy.md:
- replace the 'One name everywhere' danger callout with 'Your compose names
nothing repo-specific' (no container_name, no hardcoded names/paths)
- rewrite the compose example to the standard: svc service key,
restart: unless-stopped (required — host unit is oneshot), host paths via
${LOGS_DIR}/${CONFIG_DIR}/${MOUNTS_DIR} with :-./ local fallbacks, bare
'cache' volume. Keep user: "1337:1337" + HOME=/tmp (the services account
identity — not repo-specific)
- add 'How deploy fills it in' (injected env vars a dev can rely on + the
resulting docker ps names) and 'Onboarding a service' (deploy <host>
<workspace> <git-url> [name], deploy key handled via Gitea API)
- update paths to <name>, subprocess example to svc, checklist to the new
rules; drop docker CLI from secret rotation (host-side edit, we restart)
standards.md:
- add a 'Service compose' section: short convention + Right/Wrong tabs
(the nova before/after), linking to the Deploy guide for the full detail
Kept the services-account (1337) section and uid-agnostic Dockerfile notes.
Verified in-browser; mkdocs build --strict clean (cross-ref anchor resolves).
Signed-off-by: disqualifier <dev@disqualifier.me>
handbook
The Rethink Studios handbook — our public reference for the shared library suite, coding standards, the dev workflow, Python environments, and how to deploy on our network.
Live at docs.rethinkstudios.io.
What this is
A static documentation site built with MkDocs +
Material for MkDocs. Markdown lives
under docs/, builds to a static site/, and is served by the reverse proxy at
the subdomain — no app process, just static HTML/CSS/JS.
The Libraries page is the one dynamic part: it fetches the rethink-public
repo list from the Gitea API client-side at view time, so new libraries appear on
the next page load with no rebuild. Everything else is static markdown.
Build
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
mkdocs build # -> static site/
mkdocs serve # local preview at http://127.0.0.1:8000
Contributing
- One topic per page, grouped under
docs/, wired into the nav inmkdocs.yml. - Public — sanitize: no real hostnames, internal IPs, secrets, or exact
topology. Use placeholders (
<dev>,<project>,/srv/...). - Markdown: trailing newline, no trailing whitespace, LF line endings.
- Commits signed (
git commit -s).
Description
Rethink Development — public libs, standards, and deployment, in one handbook
1.3 MiB
Languages
Pip Requirements
100%