Loading...
FastStaq ships Docker images for the client, the API, and the worker so you can deploy almost anywhere. This guide covers a standard container deployment.
Dockerfile.client builds the Next.js front-end.Dockerfile.server builds the Express API (and runs the worker process).docker-compose.yml for local containers and docker-compose.prod.yml for production. docker-compose.example.yml is a reference template.A complete deployment has these services:
/api/v1/*.Create production .env files for the server and client with real secrets and live keys. Review Production go-live checklist before filling them.
Set TRUST_PROXY_HOPS=1 for the standard proxy -> container setup so rate limiting and client IPs work correctly.
Using Compose in production:
docker compose -f docker-compose.prod.yml build
docker compose -f docker-compose.prod.yml up -d
The client build bakes in NEXT_PUBLIC_* variables, so make sure those are set before building the client image.
Apply the schema against the production database:
docker compose -f docker-compose.prod.yml exec api \
pnpm --filter @faststaq/server db:migrate:deploy
docker compose -f docker-compose.prod.yml exec api \
pnpm --filter @faststaq/server create-admin you@example.com \
--role OWNER --create --password '...' --name 'You'
Point your platform's health checks at the API /health and the worker health endpoint so hung processes restart automatically.
If you use a platform like Dokploy, Render, Railway, or Fly, deploy the same images, set the env vars in the platform UI, attach managed PostgreSQL and Redis, and run the migration command as a release step.
Open a support ticket with your platform and the deploy error.
Sign in to leave feedback on this article.