Choose a platform
Render
- Open the Render deploy link from the Harly repository.
- Create independent values for the runtime secrets.
- Paste the same shared runtime secrets into both the web and scheduler services when Render asks for them.
- Confirm the database is production-grade and the image tag is pinned.
- Open
https://<your-app>.onrender.com/setupand claim the owner with theHARLY_SETUP_SECRETyou saved before deployment.
DigitalOcean App Platform
Use.do/app.yaml as the canonical spec. For production, replace the
development database entry with a managed PostgreSQL cluster and keep the
runtime on linux/amd64. Configure S3 before the first upload. The migrate
job must finish before the web and scheduler services receive traffic.
Railway and Fly.io
Run the CLI from a secure workstation:/setup only after readiness is green.
Production checklist
Web and scheduler run as separate long-lived processes.
PostgreSQL backups and point-in-time recovery are enabled.
S3 bucket encryption and versioning are enabled.
Secrets are stored in the platform secret manager.
Readiness and scheduler health are monitored.
A restore drill has completed against a throwaway installation.