authentik Docker & Self-Hosted Deployment

GitHub

The authentication glue you need.

RAW Compose
1. Pull Image (DOCKERHUB) docker pull docker.io/library/postgres
2. Docker Run (1-Click Launch) docker run -d --name authentik -p 5432:5432 --restart always docker.io/library/postgres:18
3. Podman Run podman run -d --name authentik -p 5432:5432 --restart always docker.io/library/postgres:18
4. Skopeo Inspect (Zero-Pull Manifest) skopeo inspect docker://docker.io/docker.io/library/postgres:18
5. ORAS Pull (OCI Artifact) oras pull docker.io/library/postgres:18
6. Compose Deployment docker compose up -d
scripts/compose.yml
Download .yml
services:
  postgresql:
    container_name: postgres
    image: docker.io/library/postgres:18
    volumes:
      - db-data:/var/lib/postgresql
    environment:
      POSTGRES_HOST_AUTH_METHOD: trust
      POSTGRES_DB: authentik
    command:
      ["postgres", "-c", "log_statement=all", "-c", "log_destination=stderr"]
    ports:
      - 127.0.0.1:5432:5432
    restart: always
  s3:
    container_name: s3
    image: docker.io/zenko/cloudserver
    environment:
      REMOTE_MANAGEMENT_DISABLE: "1"
      SCALITY_ACCESS_KEY_ID: accessKey1
      SCALITY_SECRET_ACCESS_KEY: secretKey1
    ports:
      - 8020:8000
    volumes:
      - s3-data:/usr/src/app/localData
      - s3-metadata:/usr/scr/app/localMetadata
    restart: always
  diff:
    image: docker.io/openapitools/openapi-diff:2.1.7
    # Only run when explicitly invoked (e.g. `make gen-diff`), never on `docker compose up`.
    profiles:
      - diff
    restart: no
    network_mode: none
    volumes:
      - ../:/local

volumes:
  db-data:
    driver: local
  s3-data:
    driver: local
  s3-metadata:
    driver: local