N1CK145

Untitled

Nov 9th, 2025
217
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
YAML 2.50 KB | None | 0 0
  1. services:
  2.   postgres:
  3.     image: postgres:15-alpine
  4.     container_name: logto_postgres
  5.     restart: always
  6.     environment:
  7.       POSTGRES_DB: logto
  8.       POSTGRES_USER: logto
  9.       POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-changeme}
  10.     volumes:
  11.      - postgres_data:/var/lib/postgresql/data
  12.     networks:
  13.      - web
  14.     healthcheck:
  15.       test: ["CMD-SHELL", "pg_isready -U logto"]
  16.       interval: 10s
  17.       timeout: 5s
  18.       retries: 5
  19.  
  20.   redis:
  21.     image: redis:7-alpine
  22.     container_name: logto_redis
  23.     restart: always
  24.     command: redis-server --appendonly yes
  25.     volumes:
  26.      - redis_data:/data
  27.     networks:
  28.      - web
  29.     healthcheck:
  30.       test: ["CMD", "redis-cli", "ping"]
  31.       interval: 10s
  32.       timeout: 5s
  33.       retries: 5
  34.  
  35.   logto:
  36.     image: ghcr.io/logto-io/logto:latest
  37.     container_name: logto
  38.     restart: always
  39.     depends_on:
  40.       postgres:
  41.         condition: service_healthy
  42.       redis:
  43.         condition: service_healthy
  44.     environment:
  45.      - TRUST_PROXY_HEADER=1
  46.       - ENDPOINT=https://id.my-domain.de
  47.       - ADMIN_ENDPOINT=https://id.my-domain.de
  48.       - DB_URL=postgresql://logto:${POSTGRES_PASSWORD:-changeme}@postgres:5432/logto
  49.       - REDIS_URL=redis://redis:6379
  50.       - PORT=3001
  51.       - ADMIN_PORT=3002
  52.       - TZ=Europe/Berlin
  53.     volumes:
  54.      - /etc/localtime:/etc/localtime:ro
  55.       - /etc/timezone:/etc/timezone:ro
  56.     init: true
  57.     labels:
  58.      - "traefik.enable=true"
  59.       - "traefik.http.routers.logto.tls=true"
  60.       - "traefik.http.routers.logto.rule=Host(`id.my-domain.de`)"
  61.       - "traefik.http.routers.logto.entrypoints=websecure"
  62.       - "traefik.http.services.logto.loadbalancer.server.port=3001"
  63.       - "traefik.http.routers.logto.service=logto"
  64.       - "traefik.http.routers.logto.tls.certresolver=le"
  65.       - "traefik.http.routers.logto.middlewares=logto-headers"
  66.       - "traefik.http.middlewares.logto-headers.headers.sslredirect=true"
  67.       - "traefik.http.middlewares.logto-headers.headers.forceSTSHeader=true"
  68.       - "traefik.http.middlewares.logto-headers.headers.STSSeconds=31536000"
  69.       - "traefik.http.middlewares.logto-headers.headers.customFrameOptionsValue=SAMEORIGIN"
  70.       - "traefik.http.middlewares.logto-headers.headers.customRequestHeaders.X-Forwarded-Proto=https"
  71.       - "traefik.http.middlewares.logto-headers.headers.customRequestHeaders.X-Forwarded-Host=id.my-domain.de"
  72.     networks:
  73.      - web
  74.  
  75. networks:
  76.   web:
  77.     external: true
  78.  
  79. volumes:
  80.   postgres_data:
  81.  redis_data:
Advertisement
Add Comment
Please, Sign In to add comment