services:

  idhub:
    init: true
    build:
      context: .
      dockerfile: docker/idhub.Dockerfile
    environment:
      - DOMAIN=${IDHUB_DOMAIN:-localhost}
      - ALLOWED_HOSTS=${IDHUB_ALLOWED_HOSTS:-$IDHUB_DOMAIN}
      - DEBUG=true
      - INITIAL_ADMIN_EMAIL=${IDHUB_ADMIN_EMAIL}
      - INITIAL_ADMIN_PASSWORD=${IDHUB_ADMIN_PASSWD}
      - CREATE_TEST_USERS=true
      - ENABLE_EMAIL=${IDHUB_ENABLE_EMAIL:-true}
      - ENABLE_2FACTOR_AUTH=${IDHUB_ENABLE_2FACTOR_AUTH:-true}
      - ENABLE_DOMAIN_CHECKER=${IDHUB_ENABLE_DOMAIN_CHECKER:-true}
      - PREDEFINED_TOKEN=${IDHUB_PREDEFINED_TOKEN:-}
      - SECRET_KEY=${IDHUB_SECRET_KEY:-publicsecretisnotsecureVtmKBfxpVV47PpBCF2Nzz2H6qnbd}
      - STATIC_ROOT=${IDHUB_STATIC_ROOT:-/static/}
      - MEDIA_ROOT=${IDHUB_MEDIA_ROOT:-/media/}
      - PORT=${IDHUB_PORT:-9001}
      - DEFAULT_FROM_EMAIL=${IDHUB_DEFAULT_FROM_EMAIL}
      - EMAIL_HOST=${IDHUB_EMAIL_HOST}
      - EMAIL_HOST_USER=${IDHUB_EMAIL_HOST_USER}
      - EMAIL_HOST_PASSWORD=${IDHUB_EMAIL_HOST_PASSWORD}
      - EMAIL_PORT=${IDHUB_EMAIL_PORT}
      - EMAIL_USE_TLS=${IDHUB_EMAIL_USE_TLS}
      - EMAIL_BACKEND=${IDHUB_EMAIL_BACKEND}
      - SUPPORTED_CREDENTIALS=${IDHUB_SUPPORTED_CREDENTIALS:-}
      - SYNC_ORG_DEV=${IDHUB_SYNC_ORG_DEV}
    ports:
      - ${IDHUB_PORT:-9001}:${IDHUB_PORT:-9001}
    # TODO manage volumes dev vs prod
    volumes:
      - .:/opt/idhub