mirror of
https://github.com/nickyeoman/docker-compose-cookbooks.git
synced 2026-09-24 09:26:23 +00:00
Promote authentik_dev to authentik, bump to 2026.8.3, add redis
Renames the stack to drop the _dev suffix now that it's production-ready. Bumps AUTHENTIK_TAG from 2025.10.1 to 2026.8.3, adds the redis service required by the authentik server/worker (was missing entirely), and fixes stale/duplicated lines in the README. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,73 @@
|
||||
# Authentik
|
||||
|
||||
Here is the official doc: https://docs.goauthentik.io/install-config/install/docker-compose/
|
||||
|
||||
Authentik is on a 2 month release cycle and should be updated in order of release.
|
||||
|
||||
## Overview
|
||||
|
||||
Identity provider and SSO platform supporting OIDC, SAML, LDAP, and proxy authentication.
|
||||
|
||||
## Project Details
|
||||
|
||||
- **Container Image:** [ghcr.io/goauthentik/server:2026.8.3](https://github.com/goauthentik/server)
|
||||
- **Reverse Proxy Port:** `9000`
|
||||
|
||||
## Getting Started
|
||||
|
||||
1. Start the container: `docker compose up -d`
|
||||
2. Open http://localhost:9000 in your browser
|
||||
3. Follow the initial setup wizard to configure the application
|
||||
|
||||
## Environment Variable Notes
|
||||
|
||||
PG_DB – default: authentik
|
||||
PG_USER – default: authentik
|
||||
AUTHENTIK_TAG – default: 2026.8.3
|
||||
PG_PASS – default: (none, must be set)
|
||||
AUTHENTIK_PORT_HTTP – default: 9000
|
||||
AUTHENTIK_PORT_HTTPS – default: 9443
|
||||
|
||||
## Volume Notes
|
||||
|
||||
/var/lib/postgresql/data – host path /data/authentik/db
|
||||
/data (redis) – host path /data/authentik/redis
|
||||
/media – host path /data/authentik/media
|
||||
/templates – host path /data/authentik/custom-templates
|
||||
/certs – host path /data/authentik/certs
|
||||
|
||||
## Network Notes
|
||||
|
||||
Requires proxy network
|
||||
|
||||
## Docker Run
|
||||
|
||||
```bash
|
||||
docker run -d \
|
||||
--name authentik \
|
||||
-p 9000:9000 \
|
||||
-p 9443:9443 \
|
||||
-v /data/authentik/db:/var/lib/postgresql/data \
|
||||
-v /data/authentik/redis:/data \
|
||||
-v /data/authentik/media:/media \
|
||||
-v /data/authentik/custom-templates:/templates \
|
||||
-v /data/authentik/certs:/certs \
|
||||
ghcr.io/goauthentik/server:2026.8.3
|
||||
```
|
||||
|
||||
See compose.yaml for the full set of environment variables.
|
||||
|
||||
## Additional Notes / Gotchas
|
||||
|
||||
Nothing specific to this stack so far.
|
||||
|
||||
## Dockhand Stack, Deploy from Git
|
||||
|
||||
Cookbooks Repository
|
||||
stackname: authentik
|
||||
Compose file path: authentik/compose.yaml
|
||||
Additional env file (optional): authentik/sample.env
|
||||
|
||||
Then "Load" authentik/sample.env into the Environmental variables in dockhand
|
||||
|
||||
Create the Stack
|
||||
@@ -0,0 +1,70 @@
|
||||
services:
|
||||
redis:
|
||||
image: ${AUTHENTIK_REDIS_IMAGE:-redis:alpine}
|
||||
restart: ${AUTHENTIK_RESTART:-unless-stopped}
|
||||
volumes:
|
||||
- ${VOL_PATH:-/data}/authentik/redis:/data
|
||||
networks:
|
||||
- internal
|
||||
|
||||
postgresql:
|
||||
image: ${AUTHENTIK_POSTGRES_IMAGE:-postgres:16-alpine}
|
||||
restart: ${AUTHENTIK_RESTART:-unless-stopped}
|
||||
volumes:
|
||||
- ${VOL_PATH:-/data}/authentik/db:/var/lib/postgresql/data
|
||||
environment:
|
||||
- POSTGRES_DB=${PG_DB:-authentik}
|
||||
- POSTGRES_PASSWORD=${PG_PASS:?database password required}
|
||||
- POSTGRES_USER=${PG_USER:-authentik}
|
||||
networks:
|
||||
- internal
|
||||
|
||||
server:
|
||||
image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2026.8.3}
|
||||
restart: ${AUTHENTIK_RESTART:-unless-stopped}
|
||||
volumes:
|
||||
- ${VOL_PATH:-/data}/authentik/media:/media
|
||||
- ${VOL_PATH:-/data}/authentik/custom-templates:/templates
|
||||
environment:
|
||||
- AUTHENTIK_POSTGRESQL__HOST=postgresql
|
||||
- AUTHENTIK_POSTGRESQL__NAME=${PG_DB:-authentik}
|
||||
- AUTHENTIK_POSTGRESQL__PASSWORD=${PG_PASS}
|
||||
- AUTHENTIK_POSTGRESQL__USER=${PG_USER:-authentik}
|
||||
- AUTHENTIK_REDIS__HOST=redis
|
||||
- AUTHENTIK_SECRET_KEY=${AUTHENTIK_SECRET_KEY:?secret key required}
|
||||
ports:
|
||||
- "${AUTHENTIK_PORT_HTTP:-9000}:9000"
|
||||
- "${AUTHENTIK_PORT_HTTPS:-9443}:9443"
|
||||
networks:
|
||||
- proxy
|
||||
- internal
|
||||
depends_on:
|
||||
- postgresql
|
||||
- redis
|
||||
command: server
|
||||
|
||||
worker:
|
||||
image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2026.8.3}
|
||||
restart: ${AUTHENTIK_RESTART:-unless-stopped}
|
||||
volumes:
|
||||
- ${VOL_PATH:-/data}/authentik/media:/media
|
||||
- ${VOL_PATH:-/data}/authentik/certs:/certs
|
||||
- ${VOL_PATH:-/data}/authentik/custom-templates:/templates
|
||||
environment:
|
||||
- AUTHENTIK_POSTGRESQL__HOST=postgresql
|
||||
- AUTHENTIK_POSTGRESQL__NAME=${PG_DB:-authentik}
|
||||
- AUTHENTIK_POSTGRESQL__PASSWORD=${PG_PASS}
|
||||
- AUTHENTIK_POSTGRESQL__USER=${PG_USER:-authentik}
|
||||
- AUTHENTIK_REDIS__HOST=redis
|
||||
- AUTHENTIK_SECRET_KEY=${AUTHENTIK_SECRET_KEY:?secret key required}
|
||||
networks:
|
||||
- internal
|
||||
depends_on:
|
||||
- postgresql
|
||||
- redis
|
||||
command: worker
|
||||
|
||||
networks:
|
||||
proxy:
|
||||
external: true
|
||||
internal:
|
||||
@@ -0,0 +1,19 @@
|
||||
# Compose
|
||||
VOL_PATH=/data
|
||||
AUTHENTIK_IMAGE=ghcr.io/goauthentik/server
|
||||
AUTHENTIK_TAG=2026.8.3
|
||||
AUTHENTIK_RESTART=unless-stopped
|
||||
AUTHENTIK_PORT_HTTP=9000
|
||||
AUTHENTIK_PORT_HTTPS=9443
|
||||
AUTHENTIK_POSTGRES_IMAGE=postgres:16-alpine
|
||||
AUTHENTIK_REDIS_IMAGE=redis:alpine
|
||||
|
||||
# Database
|
||||
PG_DB=authentik
|
||||
PG_USER=authentik
|
||||
# Generate: openssl rand -base64 36 | tr -d '\n'
|
||||
PG_PASS=ChangeThisPassword
|
||||
|
||||
# Authentik
|
||||
# Generate: openssl rand -base64 60 | tr -d '\n'
|
||||
AUTHENTIK_SECRET_KEY=ChangeThisPassword
|
||||
Reference in New Issue
Block a user