Deployment
CloudSeed ships a multi-stage Dockerfile. The build stages compile Tailwind CSS and the Rust release binary. The final Debian image contains the application binary, migrations, and static assets.
Build the image
just docker-build
Or build it directly:
docker build -t cloudseed .
Production requirements
Provide:
- A PostgreSQL database through
APP_DATABASE_URL. - A unique
APP_SESSION_SECRETwith at least 32 bytes. - The public application URL through
APP_BASE_URL. - A verified
APP_RESEND_FROM_EMAILandAPP_RESEND_API_KEYfor magic-link delivery. - Container routing to
APP_PORT, which defaults to5000.
The database role must be able to create the pgcrypto extension used by the job-queue migration. Migrations run automatically during application startup; no separate migration command is required.
Health checks
GET /healthreports process health without querying PostgreSQL.GET /health_dbverifies database connectivity.
Use /health for a basic liveness probe and /health_db when readiness must include the database.
Platform setup
The repository intentionally provides a portable container rather than vendor-specific deployment manifests. Configure secrets, networking, TLS, database backups, and process restart behavior in your hosting platform.
The included docker-compose.yml is for local development. Do not deploy its default credentials to production.