Skip to content

Docker

The root compose.yaml runs everything Atlas needs to develop against:

Service Role
db Postgres 18 (required for uuidv7() — see Architecture)
minio S3-compatible storage, standing in for real AWS S3
keycloak OIDC provider, for testing Authentication locally
tusd Resumable upload server
adminer A Postgres UI, for convenience
Terminal window
cp api/.env.example api/.env # fill in ATLAS_AUTH_JWT_SECRET at least
docker compose up -d

The API and frontend themselves aren’t containerized in compose.yaml — run them directly (uv run atlas in api/, pnpm dev in app/) against the services it starts.