From 59a74be250bb2d0628caba9280a20cddc8bde94b Mon Sep 17 00:00:00 2001 From: "steven@rockyserver" Date: Sun, 18 Oct 2026 19:38:14 +0000 Subject: [PATCH] deployed Authentik SSO --- domains/stvnliu.me/docker-compose.yml | 1 + domains/stvnliu.me/sso/.gitignore | 1 + domains/stvnliu.me/sso/docker-compose.yml | 90 +++++++++++++++++++++++ 3 files changed, 92 insertions(+) create mode 100644 domains/stvnliu.me/sso/.gitignore diff --git a/domains/stvnliu.me/docker-compose.yml b/domains/stvnliu.me/docker-compose.yml index ee675c2..8537a9b 100644 --- a/domains/stvnliu.me/docker-compose.yml +++ b/domains/stvnliu.me/docker-compose.yml @@ -1,3 +1,4 @@ include: - path: ./vault/docker-compose.yml - path: ./git/docker-compose.yml + - path: ./sso/docker-compose.yml diff --git a/domains/stvnliu.me/sso/.gitignore b/domains/stvnliu.me/sso/.gitignore new file mode 100644 index 0000000..4c49bd7 --- /dev/null +++ b/domains/stvnliu.me/sso/.gitignore @@ -0,0 +1 @@ +.env diff --git a/domains/stvnliu.me/sso/docker-compose.yml b/domains/stvnliu.me/sso/docker-compose.yml index e69de29..52f0a1f 100644 --- a/domains/stvnliu.me/sso/docker-compose.yml +++ b/domains/stvnliu.me/sso/docker-compose.yml @@ -0,0 +1,90 @@ +services: + authentik-postgresql: + container_name: authentik_pgsql + env_file: + - .env + environment: + POSTGRES_DB: ${PG_DB:-authentik} + POSTGRES_PASSWORD: ${PG_PASS:?database password required} + POSTGRES_USER: ${PG_USER:-authentik} + networks: + - authentik_net + healthcheck: + interval: 30s + retries: 5 + start_period: 20s + test: + - CMD-SHELL + - pg_isready -d $${POSTGRES_DB} -U $${POSTGRES_USER} + timeout: 5s + image: docker.io/library/postgres:16-alpine + restart: unless-stopped + volumes: + - database:/var/lib/postgresql/data + authentik-server: + container_name: authentik_server + command: server + depends_on: + authentik-postgresql: + condition: service_healthy + env_file: + - .env + environment: + AUTHENTIK_POSTGRESQL__HOST: authentik-postgresql + AUTHENTIK_POSTGRESQL__NAME: ${PG_DB:-authentik} + AUTHENTIK_POSTGRESQL__PASSWORD: ${PG_PASS} + AUTHENTIK_POSTGRESQL__USER: ${PG_USER:-authentik} + AUTHENTIK_SECRET_KEY: ${AUTHENTIK_SECRET_KEY:?secret key required} + image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2026.8.4} + networks: + - authentik_net + - proxy_net + ports: + - ${COMPOSE_PORT_HTTP:-9000}:9000 + # - ${COMPOSE_PORT_HTTPS:-9443}:9443 + restart: unless-stopped + shm_size: 512mb + labels: + - traefik.enable=true + - traefik.http.routers.authentik-stvnliu-me.tls=true + - traefik.http.routers.authentik-stvnliu-me.entrypoints=websecure + - traefik.http.routers.authentik-stvnliu-me.rule=Host(`sso.stvnliu.me`) + - traefik.http.services.authentik-stvnliu-me.loadbalancer.server.port=9000 + volumes: + - ./data:/data + - ./custom-templates:/templates + authentik-worker: + container_name: authentik_worker + command: worker + depends_on: + authentik-postgresql: + condition: service_healthy + env_file: + - .env + networks: + - authentik_net + environment: + AUTHENTIK_POSTGRESQL__HOST: authentik-postgresql + AUTHENTIK_POSTGRESQL__NAME: ${PG_DB:-authentik} + AUTHENTIK_POSTGRESQL__PASSWORD: ${PG_PASS} + AUTHENTIK_POSTGRESQL__USER: ${PG_USER:-authentik} + AUTHENTIK_SECRET_KEY: ${AUTHENTIK_SECRET_KEY:?secret key required} + image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2026.8.4} + restart: unless-stopped + shm_size: 512mb + user: root + volumes: + - /var/run/docker.sock:/var/run/docker.sock + - ./data:/data + - ./certs:/certs + - ./custom-templates:/templates +volumes: + database: + driver: local +networks: + authentik_net: + external: false + driver: bridge + proxy_net: + name: "proxy-net" + external: true