---
networks:
  default:
    name: "eos"
services:
  eos:
    image: "akkudoktor/eos:${VERSION}"
    container_name: "akkudoktoreos"
    read_only: true
    build:
      context: .
      dockerfile: "Dockerfile"
      args:
        PYTHON_VERSION: "${PYTHON_VERSION}"
    env_file:
      - .env
    environment:
      - OPENBLAS_NUM_THREADS=1
      - OMP_NUM_THREADS=1
      - MKL_NUM_THREADS=1
      - PIP_PROGRESS_BAR=off
      - PIP_NO_COLOR=1
      - EOS_SERVER__EOSDASH_SESSKEY=s3cr3t
      - EOS_SERVER__HOST=0.0.0.0
      - EOS_SERVER__PORT=8503
      - EOS_SERVER__EOSDASH_HOST=0.0.0.0
      - EOS_SERVER__EOSDASH_PORT=8504
      - DOCKER_COMPOSE_DATA_DIR=${HOME}/.local/share/net.akkudoktor.eos
    ulimits:
      nproc: 65535
      nofile: 65535
    security_opt:
      - seccomp:unconfined
    restart: unless-stopped
    ports:
      # Configure what ports to expose on host
      - "${EOS_SERVER__PORT}:8503"
      - "${EOS_SERVER__EOSDASH_PORT}:8504"

    # Volume mount configuration
    volumes:
      - ${DOCKER_COMPOSE_DATA_DIR}:/data:rw
