Skip to content

Docker Deployment (Optional)

Docker is an optional alternative to the default VPS + systemd + Nginx deployment. Existing systemd samples in launchkit-pro-infra remain fully supported.

Files

FilePurpose
launchkit-pro-backend/DockerfileMulti-stage NestJS production image
launchkit-pro-frontend/DockerfileNext.js production image
docker-compose.example.ymlPostgres, Redis, backend, frontend

Quick start

  1. Copy the compose example:
bash
cp docker-compose.example.yml docker-compose.yml
  1. Create env files from .env.examplenever commit real secrets.

  2. Validate configuration:

bash
docker compose -f docker-compose.example.yml config
  1. Build and run:
bash
docker compose up --build
  • API: http://localhost:4000
  • App: http://localhost:3000

Services

ServiceNotes
postgresDatabase — set DATABASE_URL in backend env
redisOptional queues — set QUEUES_ENABLED=true to use
backendRuns node dist/main.js after prisma generate + build
frontendRuns npm run start after Next production build

An optional Nginx service is commented in the compose file for buyers who want a single edge proxy.

Production notes

  • Replace placeholder passwords in compose env with secrets from your manager
  • Run npx prisma migrate deploy against the container DB on first boot
  • Point NEXT_PUBLIC_API_URL at your public API URL at build time for the frontend image
  • For TLS and domain routing, use Nginx or a cloud load balancer in front of the containers

LaunchKit Pro by LaunchKit Labs — buyer documentation. No secrets in this site.