# Development configuration for compose.yml + compose.dev.yml. # Copy to .env and adjust. # # cp .env.example .env # Address the dev ports are published on. 127.0.0.1 keeps them off the LAN. # Use 0.0.0.0 only if your hosts file maps host.docker.internal to the LAN IP # (then the browser can't reach 127.0.0.1-only ports through that name). DEV_BIND_ADDRESS=127.0.0.1 # --- PostgreSQL (shared instance, one database per project) ----------------- POSTGRES_USER=postgres POSTGRES_PASSWORD=postgres POSTGRES_HOST_PORT=5432 # --- Zitadel (OIDC) ---------------------------------------------------------- # The masterkey MUST be exactly 32 characters. host.docker.internal resolves # to the same address from the browser, from apps on the host and from # inside every project's containers, which is what makes the OIDC issuer # valid everywhere without a shared Docker network in dev. ZITADEL_MASTERKEY=MasterkeyNeedsToHave32Characters ZITADEL_EXTERNAL_DOMAIN=host.docker.internal ZITADEL_EXTERNAL_PORT=8080 ZITADEL_EXTERNAL_SECURE=false ZITADEL_PUBLIC_SCHEME=http # Login V2 UI (zitadel-login). In dev it has its own port; the URL has no # trailing slash. Only read when the Zitadel instance is created. ZITADEL_LOGIN_HOST_PORT=3900 ZITADEL_LOGIN_BASE_URL=http://host.docker.internal:3900/ui/v2/login ZITADEL_DATABASE_PASSWORD=zitadel # Console login: @zitadel. ZITADEL_ADMIN_USERNAME=admin ZITADEL_ADMIN_PASSWORD=Password1! # --- SeaweedFS (S3) ---------------------------------------------------------- S3_ACCESS_KEY=admin_access_key S3_SECRET_KEY=admin_secret_key # --- RabbitMQ ----------------------------------------------------------------- RABBITMQ_DEFAULT_USER=guest RABBITMQ_DEFAULT_PASS=guest # --- pgAdmin (optional, `--profile tools`) ----------------------------------- PGADMIN_DEFAULT_EMAIL=admin@infra.dev PGADMIN_DEFAULT_PASSWORD=admin PGADMIN_HOST_PORT=5050