Manage Docker Compose dev environment
Manage the Docker Compose development stack.
/dev <command>
Commands:
/dev start - Build and start all services/dev stop - Stop all services/dev clean - Full reset (stop + remove volumes)/dev status - Show running containers and URLs/dev logs [service] - Tail recent logs (optionally for a specific service)/dev restart [service] - Restart all or a specific service/dev migrate - Run pending Alembic migrations/dev test - Run backend pytest suiteAll commands use docker compose directly (no make dependency). Works on Linux, macOS, and Windows with Docker Desktop.
Windows (PowerShell): Do not chain commands with &&. Use ; or run commands sequentially.
/dev startBuild and start all services:
docker compose up --build -d
Then verify and show status:
docker compose ps
Show the user the service URLs:
Note: First start will be slow (Docker builds + dependency installs). Subsequent starts reuse caches.
/dev stopStop all containers (preserves volumes for faster restart):
docker compose down
/dev cleanFull reset — stop containers and remove all volumes:
docker compose down -v --remove-orphans
/dev statusShow running containers and their status:
docker compose ps
Then display the URL summary for the user.
/dev logs [service]Show recent logs. Always use --tail to protect the context window.
# All services
docker compose logs --tail 50
# Specific service
docker compose logs --tail 50 <service>
Common service names: fastapi_server, frontend, caddy_reverse_proxy, database
/dev restart [service]Restart all or a specific service:
# All services
docker compose restart
# Specific service
docker compose restart <service>
# If Dockerfile changed, rebuild
docker compose up --build <service> -d
/dev migrateRun pending Alembic migrations:
docker compose exec fastapi_server alembic upgrade head
/dev testRun the backend test suite:
docker compose exec fastapi_server uv run pytest