app-store/apps/atuin/docker-compose.yml

58 lines
2.1 KiB
YAML
Executable File

version: "3.5"
services:
atuin:
container_name: atuin
restart: always
image: ghcr.io/atuinsh/atuin:18.3.0
command: server start
volumes:
- "${APP_DATA_DIR}/data/config:/config"
links:
- postgresql:db
ports:
- ${APP_PORT}:8888
environment:
ATUIN_HOST: "0.0.0.0"
ATUIN_OPEN_REGISTRATION: ${ATUIN_ALLOW_REGISTRATION}
ATUIN_DB_URI: "postgres://atuin:${ATUIN_DB_PASSWORD}@db/atuin"
networks:
- tipi_main_network
labels:
# Main
traefik.enable: true
traefik.http.middlewares.atuin-web-redirect.redirectscheme.scheme: https
traefik.http.services.atuin.loadbalancer.server.port: 8888
# Web
traefik.http.routers.atuin-insecure.rule: Host(`${APP_DOMAIN}`)
traefik.http.routers.atuin-insecure.entrypoints: web
traefik.http.routers.atuin-insecure.service: atuin
traefik.http.routers.atuin-insecure.middlewares: atuin-web-redirect
# Websecure
traefik.http.routers.atuin.rule: Host(`${APP_DOMAIN}`)
traefik.http.routers.atuin.entrypoints: websecure
traefik.http.routers.atuin.service: atuin
traefik.http.routers.atuin.tls.certresolver: myresolver
# Local domain
traefik.http.routers.atuin-local-insecure.rule: Host(`atuin.${LOCAL_DOMAIN}`)
traefik.http.routers.atuin-local-insecure.entrypoints: web
traefik.http.routers.atuin-local-insecure.service: atuin
traefik.http.routers.atuin-local-insecure.middlewares: atuin-web-redirect
# Local domain secure
traefik.http.routers.atuin-local.rule: Host(`atuin.${LOCAL_DOMAIN}`)
traefik.http.routers.atuin-local.entrypoints: websecure
traefik.http.routers.atuin-local.service: atuin
traefik.http.routers.atuin-local.tls: true
postgresql:
image: postgres:14
restart: unless-stopped
volumes: # Don't remove permanent storage for index database files!
- "${APP_DATA_DIR}/data/postgres:/var/lib/postgresql/data/"
environment:
POSTGRES_USER: atuin
POSTGRES_PASSWORD: "${ATUIN_DB_PASSWORD}"
POSTGRES_DB: atuin
networks:
- tipi_main_network