diff --git a/authentik/docker-compose.yml b/authentik/docker-compose.yml new file mode 100644 index 0000000..2e580e6 --- /dev/null +++ b/authentik/docker-compose.yml @@ -0,0 +1,54 @@ + authentik: + image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2023.10.2} + restart: unless-stopped + command: server + environment: + AUTHENTIK_REDIS__HOST: redis + AUTHENTIK_POSTGRESQL__HOST: postgresql + AUTHENTIK_POSTGRESQL__USER: authentik + AUTHENTIK_POSTGRESQL__NAME: authentik + AUTHENTIK_POSTGRESQL__PASSWORD: ${PG_PASS} + volumes: + - ./data/authentik-media:/media + - ./data/authentik-custom-templates:/templates + env_file: + - .env + ports: + - "${COMPOSE_PORT_HTTP:-9000}:9000" + - "${COMPOSE_PORT_HTTPS:-9443}:9443" + depends_on: + - postgresql + - redis + networks: + - default + - admin_web + + authentik-worker: + image: ghcr.io/goauthentik/server:2023.10.2 + restart: unless-stopped + command: worker + environment: + AUTHENTIK_REDIS__HOST: redis + AUTHENTIK_POSTGRESQL__HOST: postgresql + AUTHENTIK_POSTGRESQL__USER: authentik + AUTHENTIK_POSTGRESQL__NAME: 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 + - ./data/authentik-media:/media + - ./data/authentik-certs:/certs + - ./data/authentik-custom-templates:/templates + env_file: + - .env + depends_on: + - postgresql + - redis + networks: + - default diff --git a/shlink/docker-compose.yml b/shlink/docker-compose.yml new file mode 100644 index 0000000..d0480c0 --- /dev/null +++ b/shlink/docker-compose.yml @@ -0,0 +1,32 @@ + mariadb-shlink: + image: mariadb:10.7.1 # https://hub.docker.com/_/mariadb + restart: always + environment: + MYSQL_ROOT_PASSWORD: change + MYSQL_USER: shlink + MYSQL_PASSWORD: changea + MYSQL_DATABASE: shlinkdb + volumes: + - ./data/shlink-db:/var/lib/mysql + - "/etc/timezone:/etc/timezone:ro" + - "/etc/localtime:/etc/localtime:ro" + networks: + - 4lt_internal + + shlink: + # proxy to port 8080 + image: shlinkio/shlink:3.6.1 + restart: always + environment: + - TZ=America/Vancouver + - DEFAULT_DOMAIN=4lt.ca + - IS_HTTPS_ENABLED=true + - DB_DRIVER=maria + - DB_USER=shlink + - DB_NAME=shlinkdb + - DB_PASSWORD=change + - DB_HOST=mariadb-shlink + - DEFAULT_BASE_URL_REDIRECT=https://www.domain.ca + networks: + - 4lt_internal + - admin_web \ No newline at end of file