# Youtube alternative, uses kibana + Elasticsearch i think version: '3.5' services: tubearchivist: container_name: tubearchivist restart: unless-stopped image: bbilly1/tubearchivist ports: - 8111:8000 volumes: - /Videos/TubeArchivist:/youtube - /docker-containers/tubearchivist/cache:/cache environment: - ES_URL=http://elasticsearch:9200 # needs protocol e.g. http and port - REDIS_CON=redis://archivist-redis:6379 # don't add protocol - HOST_UID=1000 - HOST_GID=1006 - TA_HOST=https://youtube.example.com https://tubearchivist.example.com https://yt.example.com http://192.168.1.239:8111 # set your host name # - TA_PORT=8111 # to change default port nginx listens - TA_USERNAME=tubearchivist # your initial TA credentials - TA_PASSWORD=ChangeMe123 # your initial TA credentials - ELASTIC_PASSWORD=ChangeMe123!#@ # set password for Elasticsearch - TZ=America/New_York # set your time zone - TA_AUTO_UPDATE_YTDLP=nightly # - TA_ENABLE_AUTH_PROXY=true # - TA_AUTH_PROXY_USERNAME_HEADER=HTTP_REMOTE_USER # - TA_AUTH_PROXY_LOGOUT_URL=https://youtube.example.com healthcheck: test: ["CMD", "curl", "-f", "http://localhost:8000/health"] interval: 2m timeout: 10s retries: 3 start_period: 30s depends_on: # - archivist-es # running independently - archivist-redis networks: # Specify network for container homelab: aliases: - yt # adding multiple aliases under certain network - youtube - ytdl # should redis be using elasticsearch? maybe that's why they were together? archivist-redis: image: redis container_name: archivist-redis restart: unless-stopped expose: - "6379" volumes: - /docker-containers/tubearchivist/redis:/data # depends_on: # - archivist-es networks: # Specify network for container - homelab # Disabled because running independently, just want the dang kibana to work also. # archivist-es: # image: bbilly1/tubearchivist-es # only for amd64, or use official es 8.12.0 # container_name: archivist-es # restart: unless-stopped # environment: # - "ELASTIC_PASSWORD=verysecret" # matching Elasticsearch password # - "ES_JAVA_OPTS=-Xms512m -Xmx512m" # - "xpack.security.enabled=true" # - "discovery.type=single-node" # - "path.repo=/usr/share/elasticsearch/data/snapshot" # ulimits: # memlock: # soft: -1 # hard: -1 # volumes: # - es:/usr/share/elasticsearch/data # check for permission error when using bind mount, see readme # expose: # - "9200" networks: # I don't know why but you have to specify the network 2x. In service, and in this tag area.. homelab: external: true # This option causes compose to join the above network instead of making a _default one (supposedly) also forces to join instead of creating one