43fe443574
- README + CLAUDE.md: server access, API usage, conventions - docs/server.md: specs and core stack (Dokploy v0.29.7, Traefik, Swarm) - docs/inventory.md: deployed apps, starting with httpbin - scripts/api.sh: Dokploy API wrapper Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1.5 KiB
1.5 KiB
mercury — Dokploy management repo
This repo documents and manages the Dokploy instance at https://mercury.kennethreitz.org
(Hetzner server, IP 5.161.122.181; direct fallback http://5.161.122.181:3000).
It contains no application code — only docs, inventory, and management scripts.
Working in this repo
- Root SSH access:
ssh root@mercury.kennethreitz.org(key auth). Use it for inspection and management; confirm with the user before destructive server changes. - The server runs Docker in single-node Swarm mode; Dokploy core (dokploy, postgres,
redis) are Swarm services, Traefik is a plain container. See
docs/server.md. - The Dokploy API lives at
https://mercury.kennethreitz.org/apiand uses anx-api-keyheader. The key is read from theDOKPLOY_API_KEYenv var or a local.envfile (gitignored). Never commit secrets — document env var names and shapes only. - API endpoints are tRPC-style:
GET /api/project.all,GET /api/application.one?applicationId=...,POST /api/application.deploy, etc. OpenAPI spec at/api/settings.getOpenApiDocument(authed). docs/holds the human-readable state of the setup (inventory, domains, runbooks). When something changes on the server, update the docs to match.scripts/holds management scripts. Keep them idempotent and read the API key from the environment.- Destructive Dokploy operations (delete project/app, remove volumes, redeploy prod) should be confirmed with the user before running.