services: stash: image: stashapp/stash:latest container_name: stash hostname: stash restart: unless-stopped ## the container's port must be the same with the STASH_PORT in the environment section ports: - "9999:9999" expose: - 9999 ## If you intend to use stash's DLNA functionality uncomment the below network mode and comment out the above ports section # network_mode: host logging: driver: "json-file" options: max-file: "10" max-size: "2m" environment: - STASH_STASH=/data/ - STASH_GENERATED=/generated/ - STASH_METADATA=/metadata/ - STASH_CACHE=/cache/ ## Adjust below to change default port (9999) - STASH_PORT=9999 volumes: - /etc/localtime:/etc/localtime:ro ## Keep configs, scrapers, and plugins here. - ${DOCKER_VOLUME_STORAGE:-/mnt/docker-volumes}/stash/config:/root/.stash ## Point this at your collection. - ${DOCKER_VOLUME_STORAGE:-/mnt/docker-volumes}/stash/data:/data ## This is where your stash's metadata lives - ${DOCKER_VOLUME_STORAGE:-/mnt/docker-volumes}/stash/metadata:/metadata ## Any other cache content. - ${DOCKER_VOLUME_STORAGE:-/mnt/docker-volumes}/stash/cache:/cache ## Where to store generated content (screenshots,previews,transcodes,sprites) - ${DOCKER_VOLUME_STORAGE:-/mnt/docker-volumes}/stash/generated:/generated #networks: # - proxy #labels: # - traefik.enable=true # - traefik.docker.network=proxy # - traefik.http.routers.stash.rule=Host(`stash.example.com`) # - traefik.http.services.stash.loadbalancer.server.port=9999 # # Part for optional traefik middlewares # - traefik.http.routers.stash.middlewares=local-ipwhitelist@file,basic-auth@file #networks: # proxy: # external: true