pnpm docker:dev| Service | Port | Hot Reload | Purpose |
|---|---|---|---|
| PostgreSQL | 5432 | N/A | Database |
| Redis | 6379 | N/A | Cache/Sessions |
| API | 3001 | ✅ Yes | Backend API |
| Web | 5173 | ✅ Yes | Frontend |
| Prisma Studio | 5555 | N/A | DB Admin |
apps/api/src/**/*.ts→ API restarts automaticallyapps/web/src/**/*.tsx→ Browser updates instantly (HMR)
packages/types/src/**/*.ts→ Rebuilds → Apps reloadpackages/utils/src/**/*.ts→ Rebuilds → Apps reloadpackages/ui/src/**/*.tsx→ Rebuilds → Web HMR updatespackages/db/src/**/*.ts→ Apps reload (no build needed)
# All services
docker-compose -f docker-compose.dev.yml logs -f
# Specific service
docker-compose -f docker-compose.dev.yml logs -f api
docker-compose -f docker-compose.dev.yml logs -f webdocker-compose -f docker-compose.dev.yml downpnpm docker:dev:builddocker-compose -f docker-compose.dev.yml restart api
docker-compose -f docker-compose.dev.yml restart web# Check if tsup is running
docker-compose -f docker-compose.dev.yml logs api | grep tsup
# Force rebuild packages
docker-compose -f docker-compose.dev.yml exec api pnpm --filter @myorg/types buildEdit .env and change ports:
API_PORT=3002
WEB_PORT=5174Your Machine Docker Containers
┌─────────────┐ ┌──────────────────┐
│ │ │ API Container │
│ Edit Code │ Volume │ ┌────────────┐ │
│ in VSCode │ Mount │ │ tsx watch │ │
│ │ ────────> │ │ (API) │ │
│ │ │ ├────────────┤ │
│ │ │ │ tsup watch │ │
│ │ │ │ (packages) │ │
│ │ │ └────────────┘ │
└─────────────┘ └──────────────────┘
┌──────────────────┐
│ Web Container │
│ ┌────────────┐ │
│ │ Vite HMR │ │
│ │ (Web) │ │
│ ├────────────┤ │
│ │ tsup watch │ │
│ │ (packages) │ │
│ └────────────┘ │
└──────────────────┘
- Keep containers running - No need to restart for code changes
- Watch the logs - See real-time feedback on changes
- Use Prisma Studio - Visual DB editor at http://localhost:5555
- Check health - API health at http://localhost:3001/health
See DOCKER_HOT_RELOAD.md for complete details.