services: tubearchivist: image: bbilly1/tubearchivist:latest container_name: tubearchivist ports: - "${TA_PORT:-8000}:8000" volumes: - ${TA_YOUTUBE_PATH:-/mnt/media/youtube}:/youtube - tubearchivist_cache:/cache environment: - ES_URL=http://archivist-es:9200 - REDIS_CON=redis://archivist-redis:6379 - HOST_UID=${HOST_UID:-1000} - HOST_GID=${HOST_GID:-1000} - TA_HOST=${TA_HOST} - TA_USERNAME=${TA_USERNAME} - TA_PASSWORD=${TA_PASSWORD} - ELASTIC_PASSWORD=${ELASTIC_PASSWORD} - TZ=${TZ:-UTC} restart: unless-stopped healthcheck: test: ["CMD", "curl", "-f", "http://localhost:8000/api/health/"] interval: 2m timeout: 10s retries: 3 start_period: 30s depends_on: - archivist-es - archivist-redis archivist-redis: image: redis:7-alpine container_name: archivist-redis expose: - "6379" volumes: - tubearchivist_redis:/data restart: unless-stopped depends_on: - archivist-es archivist-es: image: bbilly1/tubearchivist-es:latest container_name: archivist-es environment: - ELASTIC_PASSWORD=${ELASTIC_PASSWORD} - ES_JAVA_OPTS=${ES_JAVA_OPTS} - xpack.security.enabled=true - discovery.type=single-node - path.repo=/usr/share/elasticsearch/data/snapshot ulimits: memlock: soft: -1 hard: -1 volumes: - tubearchivist_es:/usr/share/elasticsearch/data expose: - "9200" restart: unless-stopped volumes: tubearchivist_cache: tubearchivist_redis: tubearchivist_es: