Switch authentik and gitea to use central postgres database

This commit is contained in:
2026-04-01 21:03:59 +02:00
parent 7aaeffddde
commit ff4e81082f
2 changed files with 26 additions and 33 deletions

View File

@@ -1,5 +1,6 @@
services:
db:
profiles: [disabled]
image: postgres@sha256:035b9ab53cfa147d7202b61f5f7782b939ae815b7d6bc81c96b7b42ff1fca950
container_name: authentik-db
restart: unless-stopped
@@ -9,8 +10,6 @@ services:
POSTGRES_PASSWORD_FILE: /run/secrets/pg_pass
volumes:
- authentik_database:/var/lib/postgresql/data
networks:
- authentik_internal
secrets:
- pg_pass
healthcheck:
@@ -26,22 +25,19 @@ services:
container_name: authentik-server
restart: unless-stopped
command: server
depends_on:
db:
condition: service_healthy
environment:
AUTHENTIK_POSTGRESQL__HOST: db
AUTHENTIK_POSTGRESQL__NAME: ${PG_DB}
AUTHENTIK_POSTGRESQL__USER: ${PG_USER}
AUTHENTIK_POSTGRESQL__PASSWORD: file:///run/secrets/pg_pass
AUTHENTIK_POSTGRESQL__HOST: postgres
AUTHENTIK_POSTGRESQL__NAME: authentik
AUTHENTIK_POSTGRESQL__USER: authentik
AUTHENTIK_POSTGRESQL__PASSWORD: file:///run/secrets/authentik_postgres_password
AUTHENTIK_SECRET_KEY: file:///run/secrets/authentik_secret_key
volumes:
- authentik_data:/data
networks:
- authentik_internal
- homelab_apps
- homelab_db
secrets:
- pg_pass
- authentik_postgres_password
- authentik_secret_key
labels:
- traefik.enable=true
@@ -56,21 +52,18 @@ services:
container_name: authentik-worker
restart: unless-stopped
command: worker
depends_on:
db:
condition: service_healthy
environment:
AUTHENTIK_POSTGRESQL__HOST: db
AUTHENTIK_POSTGRESQL__NAME: ${PG_DB}
AUTHENTIK_POSTGRESQL__USER: ${PG_USER}
AUTHENTIK_POSTGRESQL__PASSWORD: file:///run/secrets/pg_pass
AUTHENTIK_POSTGRESQL__HOST: postgres
AUTHENTIK_POSTGRESQL__NAME: authentik
AUTHENTIK_POSTGRESQL__USER: authentik
AUTHENTIK_POSTGRESQL__PASSWORD: file:///run/secrets/authentik_postgres_password
AUTHENTIK_SECRET_KEY: file:///run/secrets/authentik_secret_key
volumes:
- authentik_data:/data
networks:
- authentik_internal
- homelab_db
secrets:
- pg_pass
- authentik_postgres_password
- authentik_secret_key
volumes:
authentik_database:
@@ -78,12 +71,14 @@ volumes:
authentik_data:
driver: local
networks:
authentik_internal:
internal: true
homelab_apps:
external: true
homelab_db:
external: true
secrets:
pg_pass:
environment: AUTHENTIK_PG_PASS
authentik_postgres_password:
environment: AUTHENTIK_POSTGRES_PASSWORD
authentik_secret_key:
environment: AUTHENTIK_SECRET_KEY

View File

@@ -3,15 +3,12 @@ services:
image: gitea/gitea@sha256:1926e89ad28358ef2146bb8a1b9c3ba24bae681cb02b72d2df11125fdc675abe
container_name: gitea
restart: unless-stopped
depends_on:
db:
condition: service_healthy
environment:
- GITEA__database__DB_TYPE=postgres
- GITEA__database__HOST=db:5432
- GITEA__database__HOST=postgres:5432
- GITEA__database__NAME=gitea
- GITEA__database__USER=gitea
- GITEA__database__PASSWD_FILE=/run/secrets/gitea_db_password
- GITEA__database__PASSWD_FILE=/run/secrets/gitea_postgres_password
- GITEA__server__DOMAIN=${GITEA_DOMAIN}
- GITEA__server__ROOT_URL=https://${GITEA_DOMAIN}
@@ -29,7 +26,7 @@ services:
- GITEA__packages__ENABLED=true
networks:
- homelab_apps
- gitea_db_net
- homelab_db
ports:
- "2222:2222"
volumes:
@@ -38,7 +35,7 @@ services:
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
secrets:
- gitea_db_password
- gitea_postgres_password
labels:
- traefik.enable=true
- traefik.docker.network=homelab_apps
@@ -49,6 +46,7 @@ services:
- traefik.http.services.gitea.loadbalancer.server.port=3000
db:
profiles: [disabled]
image: postgres@sha256:035b9ab53cfa147d7202b61f5f7782b939ae815b7d6bc81c96b7b42ff1fca950
container_name: gitea_db
restart: unless-stopped
@@ -56,8 +54,6 @@ services:
- POSTGRES_DB=gitea
- POSTGRES_USER=gitea
- POSTGRES_PASSWORD_FILE=/run/secrets/gitea_db_password
networks:
- gitea_db_net
volumes:
- gitea_db_data:/var/lib/postgresql
secrets:
@@ -100,11 +96,13 @@ volumes:
networks:
homelab_apps:
external: true
gitea_db_net:
internal: true
homelab_db:
external: true
secrets:
gitea_db_password:
environment: GITEA_DB_PASSWORD
gitea_postgres_password:
environment: GITEA_POSTGRES_PASSWORD
gitea_runner_token:
environment: GITEA_RUNNER_TOKEN