Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/Poludo/docker-plex-remote-transcoder
Plex Media Server + Transcoder that can be deployed on remote nodes
https://github.com/Poludo/docker-plex-remote-transcoder
docker-container plex plex-media-server plex-remote-transcoder plex-server plex-transcoder plexmediaserver prt remote-transcoders
Last synced: 3 months ago
JSON representation
Plex Media Server + Transcoder that can be deployed on remote nodes
- Host: GitHub
- URL: https://github.com/Poludo/docker-plex-remote-transcoder
- Owner: Poludo
- Archived: true
- Created: 2017-09-11T08:46:17.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2020-04-07T13:31:16.000Z (over 4 years ago)
- Last Synced: 2024-04-27T06:35:00.244Z (7 months ago)
- Topics: docker-container, plex, plex-media-server, plex-remote-transcoder, plex-server, plex-transcoder, plexmediaserver, prt, remote-transcoders
- Language: Dockerfile
- Homepage:
- Size: 33.2 KB
- Stars: 10
- Watchers: 3
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Docker container for Plex-Remote-Transcoder
This 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.## Master container
Official Plex Docker container on which has been added a bunch of stuff to make it compatible with slave containers running remote transcoders:
- Based on the [official Plex Docker image](https://github.com/plexinc/pms-docker)
- [Plex-Remote-Transcoder](https://github.com/wnielson/Plex-Remote-Transcoder) installed and set up to be run as a master node
- Bundled with an SSH server & client for automatic interaction with slave containers
- Bundled with an NFS server for sharing of required Plex files to slave containers## Slave container
Container 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.# Usage
## Quick start
1. Run the master container: it will automatically generate an SSH key pair in the config directory
2. Copy the "/config/.ssh" directory from the master container to the slave container (by keeping the same path)
3. Run the slave container
4. Enjoy ;)## Master container
You have to configure it like the [official Plex Docker container](https://github.com/plexinc/pms-docker#bridge-networking) with some additional configuration:
```
docker create \
--name=plex \
--privileged \
< ... > \
-p :22 \
-p :2049/tcp \
poludo/plex-remote-transcoder:master
```## Slave container
```
docker create \
--name=plex-remote-transcoder \
--privileged \
-v :/config \
-v :/data \
-p :22 \
-e MASTER_IP= \
-e MASTER_NFS_PORT= \
-e MASTER_SSH_PORT= \
-e SLAVE_SSH_PORT= \
poludo/plex-remote-transcoder:slave
```## Example
A [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.# Optional parameters
## Master container
- `-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.
- `-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).## Slave container
- `-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.# Troubleshooting
- `sudo docker logs -f ` to access a container's logs.
- `sudo docker exec cat /tmp/prt.log` to access the PRT logs of the master container.