Local Docker guide
This guide explains how to run the entire Payofy stack in Docker on your local computer.
Current status
Your local Docker is already running all eight containers. You can inspect their status with:
docker compose ps
Quick start with one script
You can deploy or reset all containers on your machine with the same script built for server deployments:
./scripts/deploy/vps-install.sh
This single command:
- Reads your
.envsettings (or creates one from.env.example). - Builds all images.
- Starts PostgreSQL, Redis, API, Worker, Admin, Portal, Docs, and Gateway.
- Runs database migrations.
- Seeds starter data.
Manual commands
If you prefer to run standard Docker Compose commands:
1. Build and start containers
docker compose up -d --build
2. Apply database migrations
docker compose exec -T api pnpm --filter @payofy/db db:migrate
3. Seed starter data
docker compose exec -T api pnpm --filter @payofy/db db:seed
Local browser URLs
Once containers are running, open any of these addresses in your browser:
- Unified Gateway: http://localhost
- Health Check: http://localhost/v1/health
- Ops Admin Console: http://localhost/admin/ (or http://localhost:5173)
- Partner Portal: http://localhost/portal/ (or http://localhost:5174)
- Developer Docs: http://localhost/docs/ (or http://localhost:3005)
Managing containers
To view live output from all services:
docker compose logs -f
To view logs for a specific service:
docker compose logs -f api
docker compose logs -f worker
To stop all services without deleting data:
docker compose down
To stop all services and remove database volumes:
docker compose down -v