time=“2025-07-23T20:49:22Z” level=info msg=“initialization started” caller=“/home/runner/work/zitadel/zitadel/cmd/initialise/init.go:75”
time=“2025-07-23T20:49:22Z” level=fatal msg=“unable to initialize the database” caller=“/home/runner/work/zitadel/zitadel/cmd/initialise/init.go:68” error=“failed to connect to user=root database=postgres
:\n\t127.0.0.1:5432 (localhost): dial error: dial tcp 127.0.0.1:5432: connect: connection refused\n\t[::1]:5432 (localhost): dial error: dial tcp [::1]:5432: connect: connection refused”
time=“2025-07-23T20:49:23Z” level=info msg=“initialization started” caller=“/home/runner/work/zitadel/zitadel/cmd/initialise/init.go:75”
Here is my docker compose file:
`[___](services:
Caddy reverse proxy
caddy:
image: caddy
restart: unless-stopped
networks: [ netbird ]
ports:
- ‘443:443’
- ‘443:443/udp’
- '80:80’
volumes:
- netbird_caddy_data:/data
- ./Caddyfile:/etc/caddy/Caddyfile
logging:
driver: "json-file"
options:
max-size: "500m"
max-file: "2"
UI dashboard
dashboard: image: netbirdio/dashboard:latest restart: unless-stopped networks: [netbird] env_file: - ./dashboard.env logging: driver: “json-file” options: max-size: “500m” max-file: "2"
Signal
signal: image: netbirdio/signal:latest restart: unless-stopped networks: [netbird] logging: driver: “json-file” options: max-size: “500m” max-file: "2"
Relay
relay: image: netbirdio/relay:latest restart: unless-stopped networks: [netbird] env_file: - ./relay.env logging: driver: “json-file” options: max-size: “500m” max-file: "2"
Management
management: image: netbirdio/management:latest restart: unless-stopped networks: [netbird] volumes: - netbird_management:/var/lib/netbird - ./management.json:/etc/netbird/management.json command: [ “–port”, “80”, “–log-file”, “console”, “–log-level”, “info”, “–disable-anonymous-metrics=false”, “–single-account-mode-domain=netbird.selfhosted”, “–dns-domain=netbird.selfhosted”, “–idp-sign-key-refresh-enabled”, ] logging: driver: “json-file” options: max-size: “500m” max-file: "2"
Coturn, AKA relay server
coturn: image: coturn/coturn restart: unless-stopped #domainname: netbird.relay.selfhosted volumes: - ./turnserver.conf:/etc/turnserver.conf:ro network_mode: host command: - -c /etc/turnserver.conf logging: driver: “json-file” options: max-size: “500m” max-file: "2"
Zitadel - identity provider
zitadel: restart: ‘always’ networks: [netbird] image: ‘ghcr.io/zitadel/zitadel:v2.64.1’ command: ‘start-from-init --masterkeyFromEnv --tlsMode external’ env_file: - ./zitadel.env depends_on: zdb: condition: ‘service_healthy’ volumes: - ./machinekey:/machinekey - netbird_zitadel_certs:/zdb-certs:ro logging: driver: “json-file” options: max-size: “500m” max-file: "2"
Postgres for Zitadel
zdb: restart: ‘always’ networks: [netbird] image: ‘postgres:16-alpine’ env_file: - ./zdb.env volumes: - netbird_zdb_data:/var/lib/postgresql/data:rw healthcheck: test: [“CMD-SHELL”, “pg_isready”, “-d”, “db_prod”] interval: 5s timeout: 60s retries: 10 start_period: 5s logging: driver: “json-file” options: max-size: “500m” max-file: “2” volumes: netbird_zdb_data: netbird_management: netbird_caddy_data: netbird_zitadel_certs:
networks: netbird:)`
BobsAccountant@lemmy.world 5 weeks ago
I too am running Authentik in an LXC and am using the default
docker-compose.yml
. Did you make sure to define your.env
file correctly? Are you able to connect to the docker container itself after deployment? You may need to blow the DB volume away and try again because it will only provision on first run.Tinkerer@lemmy.ca 5 weeks ago
I definitely can’t connect to the container as it doesn’t start. I’ve also tried without the .env file and that doesn’t work either. I’ve even setup a new LXC and started from scratch with the same result.