media-compose.yml 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. version: '3.7'
  2. # Made to be run with docker-compose, for GPU passthrough.
  3. networks:
  4. media:
  5. driver: overlay
  6. services:
  7. plex:
  8. image: linuxserver/plex:amd64-version-1.25.6.5577-c8bd13540
  9. deploy:
  10. resources:
  11. reservations:
  12. devices:
  13. - driver: nvidia
  14. count: 1
  15. capabilities: [gpu]
  16. expose:
  17. - "32400"
  18. ports:
  19. - mode: host
  20. published: 32400
  21. target: 32400
  22. environment:
  23. - PUID=1000
  24. - PGID=1000
  25. volumes:
  26. - ${CONTAINERS_DIR}/plex:/config
  27. - ${MEDIA_DIR}/Video/Movies:/movies
  28. - ${MEDIA_DIR}/Video/Shows:/tv
  29. - ${MEDIA_DIR}/Video/Anime:/Anime
  30. - type: tmpfs
  31. target: /transcodes
  32. tmpfs:
  33. size: 12000000000 # ~12gb
  34. restart: always
  35. networks:
  36. - media
  37. jellyfin:
  38. image: jellyfin/jellyfin:10.7.7
  39. # GPU encoding doesn't work currently
  40. deploy:
  41. resources:
  42. reservations:
  43. devices:
  44. - driver: nvidia
  45. count: 1
  46. capabilities: [gpu]
  47. expose:
  48. - "8096"
  49. user: 1000:1000
  50. ports:
  51. - mode: host
  52. published: 8096
  53. target: 8096
  54. tmpfs:
  55. - /transcodes:mode=770,size=12000000000,uid=1000,gid=1000
  56. volumes:
  57. - ${CONTAINERS_DIR}/jellyfin:/config
  58. - ${MEDIA_DIR}:/media
  59. restart: always
  60. networks:
  61. - media
  62. jellyfixer:
  63. image: quay.io/xsteadfastx/jellyfixer:latest
  64. command: http://jellyfin:8096/jellyfin
  65. expose:
  66. - "8088"
  67. ports:
  68. - mode: host
  69. published: 8088
  70. target: 8088
  71. environment:
  72. - JELLYFIXER_INTERNAL_URL=http://jellyfin:8096/jellyfin
  73. - JELLYFIXER_EXTERNAL_URL=https://jellyfin.${DOMAIN}/jellyfin
  74. restart: always
  75. networks:
  76. - media