Skip to content
Snippets Groups Projects
docker-compose.yml 1.50 KiB

services:


  db:

    image: postgres:16-alpine
    restart: always
    volumes:
      - "{{ basedir }}/db:/var/lib/postgresql/data"
    environment:
      POSTGRES_DB: tandoor
      POSTGRES_PORT: 5432
      POSTGRES_USER: tandoor
      POSTGRES_PASSWORD: "{{ postgres_user_pass }}"
    networks:
      - default


  app:

    restart: always
    image: vabene1111/recipes:latest
    depends_on:
      - db
    volumes:
      - "{{ basedir }}/staticfiles:/opt/recipes/staticfiles"
      - "{{ basedir }}/mediafiles:/opt/recipes/mediafiles"
    environment:
      SECRET_KEY: {{ secret_key }}
      DB_ENGINE: django.db.backends.postgresql
      POSTGRES_HOST: db
      POSTGRES_DB: tandoor
      POSTGRES_PORT: 5432
      POSTGRES_USER: tandoor
      POSTGRES_PASSWORD: "{{ postgres_user_pass }}"
      SOCIAL_PROVIDERS: allauth.socialaccount.providers.openid_connect
      SOCIALACCOUNT_PROVIDERS: '{"openid_connect":{"APPS":[{"provider_id":"uffd","name":"uffd","client_id":"tandoor","secret":"{{ openid_client_secret }}","settings":{"server_url":"{{ oidc_global.provider_url }}/.well-known/openid-configuration"}}]}}'
      SOCIAL_DEFAULT_GROUP: "warpzone"
      ENABLE_SIGNUP: "False"
    labels:
      - traefik.enable=true
      - traefik.http.routers.{{ servicename }}.rule=Host(`{{ domain }}`)
      - traefik.http.routers.{{ servicename }}.entrypoints=websecure
      - traefik.http.services.{{ servicename }}.loadbalancer.server.port=8080
    networks:
      - default
      - web


networks:
  web:
    external: true