{"id":13808904,"url":"https://github.com/Poludo/docker-plex-remote-transcoder","last_synced_at":"2025-05-14T03:31:43.083Z","repository":{"id":215896430,"uuid":"103111867","full_name":"Poludo/docker-plex-remote-transcoder","owner":"Poludo","description":"Plex Media Server + Transcoder that can be deployed on remote nodes","archived":true,"fork":false,"pushed_at":"2020-04-07T13:31:16.000Z","size":34,"stargazers_count":10,"open_issues_count":0,"forks_count":2,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-08-04T01:10:07.561Z","etag":null,"topics":["docker-container","plex","plex-media-server","plex-remote-transcoder","plex-server","plex-transcoder","plexmediaserver","prt","remote-transcoders"],"latest_commit_sha":null,"homepage":"","language":"Dockerfile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Poludo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2017-09-11T08:46:17.000Z","updated_at":"2023-01-28T09:03:45.000Z","dependencies_parsed_at":"2024-01-28T23:43:22.834Z","dependency_job_id":null,"html_url":"https://github.com/Poludo/docker-plex-remote-transcoder","commit_stats":null,"previous_names":["poludo/docker-plex-remote-transcoder"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Poludo%2Fdocker-plex-remote-transcoder","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Poludo%2Fdocker-plex-remote-transcoder/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Poludo%2Fdocker-plex-remote-transcoder/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Poludo%2Fdocker-plex-remote-transcoder/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Poludo","download_url":"https://codeload.github.com/Poludo/docker-plex-remote-transcoder/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225273289,"owners_count":17448080,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["docker-container","plex","plex-media-server","plex-remote-transcoder","plex-server","plex-transcoder","plexmediaserver","prt","remote-transcoders"],"created_at":"2024-08-04T01:01:54.627Z","updated_at":"2024-11-19T00:31:11.871Z","avatar_url":"https://github.com/Poludo.png","language":"Dockerfile","readme":"# Docker container for Plex-Remote-Transcoder\nThis repository contains a set of Docker containers that make the set up of [Plex-Remote-Transcoder](https://github.com/wnielson/Plex-Remote-Transcoder), a distributed transcoding backend for Plex, easy and fast.\n\n## Master container\nOfficial Plex Docker container on which has been added a bunch of stuff to make it compatible with slave containers running remote transcoders:\n- Based on the [official Plex Docker image](https://github.com/plexinc/pms-docker)\n- [Plex-Remote-Transcoder](https://github.com/wnielson/Plex-Remote-Transcoder) installed and set up to be run as a master node\n- Bundled with an SSH server \u0026 client for automatic interaction with slave containers\n- Bundled with an NFS server for sharing of required Plex files to slave containers\n\n## Slave container\nContainer on which is running a [Plex-Remote-Transcoder](https://github.com/wnielson/Plex-Remote-Transcoder) client, it will automatically connect to the master container and register itself to it when started.\n\n# Usage\n\n## Quick start\n1. Run the master container: it will automatically generate an SSH key pair in the config directory\n2. Copy the \"/config/.ssh\" directory from the master container to the slave container (by keeping the same path)\n3. Run the slave container\n4. Enjoy ;)\n\n## Master container\nYou have to configure it like the [official Plex Docker container](https://github.com/plexinc/pms-docker#bridge-networking) with some additional configuration:\n```\ndocker create \\\n  --name=plex \\\n  --privileged \\\n\t\u003c ... \u003e \\\n\t-p \u003crandom available port for ssh\u003e:22 \\\n\t-p \u003crandom available port for nfs\u003e:2049/tcp \\\n  poludo/plex-remote-transcoder:master\n```\n\n## Slave container\n```\ndocker create \\\n  --name=plex-remote-transcoder \\\n  --privileged \\\n\t-v \u003cpath to config\u003e:/config \\\n\t-v \u003cpath to media\u003e:/data \\\n\t-p \u003crandom available port for ssh\u003e:22 \\\n\t-e MASTER_IP=\u003cip of the host running the master container\u003e \\\n\t-e MASTER_NFS_PORT=\u003cmaster container nfs port\u003e \\\n\t-e MASTER_SSH_PORT=\u003cmaster container ssh port\u003e \\\n\t-e SLAVE_SSH_PORT=\u003cssh port specified above\u003e \\\n  poludo/plex-remote-transcoder:slave\n```\n\n## Example\nA [docker-compose example](https://github.com/Poludo/docker-plex-remote-transcoder/blob/master/docker-compose.yml) for setting up a master and slave container locally is available on the repository.\n\n# Optional parameters\n\n## Master container\n- `-e USE_MASTER_TRANSCODER=true` Registers the master container as an available Plex transcoder. By default, the master container cannot be used for transcoding unless no slaves are available.\n- `-e DISTRIBUTE_SINGLE_TRANSCODES=true` Runs a single transcoding job on multiple hosts. By default, chunks are only distributed to a single host. Please note that the use of this parameter requires the restart of all slave containers. Uses a [fork of Plex-Remote-Transcoder](https://github.com/JJK801/Plex-Remote-Transcoder).\n\n## Slave container\n- `-e IMPORT_PLEX_MEDIA=false` Disables the import of the Plex media library from the master container over NFS. Can be useful when the media library is accessible by mounting it on the host with [Rclone](https://github.com/ncw/rclone) or [Plexdrive](https://github.com/dweidenfeld/plexdrive). Please note that the media library has to be stored in the \"/data\" directory of the container. Be also sure to check that the content and the (recursive) permissions of this directory are the same in the master and in the slave containers.\n\n# Troubleshooting\n- `sudo docker logs -f \u003ccontainer name\u003e` to access a container's logs.\n- `sudo docker exec \u003cmaster container name\u003e cat /tmp/prt.log` to access the PRT logs of the master container.\n","funding_links":[],"categories":["Dockerfile"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FPoludo%2Fdocker-plex-remote-transcoder","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FPoludo%2Fdocker-plex-remote-transcoder","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FPoludo%2Fdocker-plex-remote-transcoder/lists"}