Files
docker-compose/Oracle Homelab/authentik/compose/compose.yml
Preston Hunter 090796be3c feat: Implement comprehensive service management features
- Added new components for managing services, including creation, editing, and listing.
- Introduced stack management functionalities, allowing users to create, edit, and view stacks.
- Implemented user management features, enabling user creation, editing, and listing.
- Enhanced volume management with create and info functionalities.
- Integrated network management capabilities, including listing and viewing networks.
- Developed task management features for viewing and listing tasks.
- Added support for Docker registry interactions, including authentication and repository management.
- Implemented error handling and user feedback mechanisms throughout the application.
- Established a robust routing system for navigating between different components and views.
- Enhanced the overall user experience with improved UI components and state management.
2025-12-20 19:13:09 -05:00

119 lines
3.8 KiB
YAML
Executable File

name: authentik
services:
postgresql:
container_name: authentik-postgres
image: docker.io/library/postgres:16-alpine
restart: unless-stopped
healthcheck:
test: ["CMD-SHELL", "pg_isready -d $${POSTGRES_DB} -U $${POSTGRES_USER}"]
start_period: 20s
interval: 30s
retries: 5
timeout: 5s
volumes:
- /mnt/docker/local/authentik/data/postgres/data:/var/lib/postgresql/data
environment:
POSTGRES_PASSWORD: ${PG_PASS:?database password required}
POSTGRES_USER: ${PG_USER:-authentik}
POSTGRES_DB: ${PG_DB:-authentik}
env_file:
- .env
networks:
- authentik-backend
redis:
container_name: authentik-redis
image: docker.io/library/redis:alpine
command: --save 60 1 --loglevel warning
restart: unless-stopped
healthcheck:
test: ["CMD-SHELL", "redis-cli ping | grep PONG"]
start_period: 20s
interval: 30s
retries: 5
timeout: 3s
volumes:
- /mnt/docker/local/authentik/data/redis/data:/data
networks:
- authentik-backend
server:
container_name: authentik-server
image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2025.6.4}
restart: unless-stopped
command: server
environment:
AUTHENTIK_SECRET_KEY: ${AUTHENTIK_SECRET_KEY:?secret key required}
AUTHENTIK_REDIS__HOST: redis
AUTHENTIK_POSTGRESQL__HOST: postgresql
AUTHENTIK_POSTGRESQL__USER: ${PG_USER:-authentik}
AUTHENTIK_POSTGRESQL__NAME: ${PG_DB:-authentik}
AUTHENTIK_POSTGRESQL__PASSWORD: ${PG_PASS}
volumes:
- /mnt/docker/local/authentik/data/media/data:/media
- /mnt/docker/local/authentik/data/templates/data:/templates
env_file:
- .env
#ports:
# - "${COMPOSE_PORT_HTTP:-9000}:9000"
# - "${COMPOSE_PORT_HTTPS:-9443}:9443"
networks:
- authentik-backend
- npm_default
depends_on:
postgresql:
condition: service_healthy
redis:
condition: service_healthy
worker:
image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2025.6.4}
restart: unless-stopped
command: worker
environment:
AUTHENTIK_SECRET_KEY: ${AUTHENTIK_SECRET_KEY:?secret key required}
AUTHENTIK_REDIS__HOST: redis
AUTHENTIK_POSTGRESQL__HOST: postgresql
AUTHENTIK_POSTGRESQL__USER: ${PG_USER:-authentik}
AUTHENTIK_POSTGRESQL__NAME: ${PG_DB:-authentik}
AUTHENTIK_POSTGRESQL__PASSWORD: ${PG_PASS}
# `user: root` and the docker socket volume are optional.
# See more for the docker socket integration here:
# https://goauthentik.io/docs/outposts/integrations/docker
# Removing `user: root` also prevents the worker from fixing the permissions
# on the mounted folders, so when removing this make sure the folders have the correct UID/GID
# (1000:1000 by default)
user: root
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /mnt/docker/local/authentik/data/media/data:/media
- /mnt/docker/local/authentik/data/certs/data:/certs
- /mnt/docker/local/authentik/data/templates/data:/templates
env_file:
- .env
depends_on:
postgresql:
condition: service_healthy
redis:
condition: service_healthy
networks:
- authentik-backend
radius_outpost:
# image: ghcr.io/goauthentik/radius:latest
image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/radius}:${AUTHENTIK_TAG:-2025.6.4}
restart: unless-stopped
ports:
- 1812:1812/udp
environment:
AUTHENTIK_HOST: https://auth.prestonhunter.space
AUTHENTIK_INSECURE: "true"
AUTHENTIK_TOKEN: HIrjmFIxFFtDHwJU5O1U0zbK7UALFe9d3dAu5eBIxRVeAJE1ufp4ssaz4QUK
depends_on:
- server
networks:
- authentik-backend
- npm_default
networks:
authentik-backend:
external: true
npm_default:
external: true