Files
kennethreitz 43fe443574 Initial commit: document the mercury Dokploy setup
- 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>
2026-06-05 00:02:24 -04:00

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/api and uses an x-api-key header. The key is read from the DOKPLOY_API_KEY env var or a local .env file (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.