Sign inSign up

iampuid0/pdrcrd

By iampuid0

•Updated about 2 years ago
Archived

A combined docker image for the unified deployment of itsToggle's projects

Image
7

10K+

iampuid0/pdrcrd repository overview

⁠pdrcrd

⁠Description

A combined docker image for the unified deployment of itsToggle's⁠ projects -- plex_debrid⁠ and rclone_RD⁠

⁠Features

⁠Docker Hub

A prebuilt image is hosted on docker hub⁠

⁠Docker-compose

services:
  pdrcrd:
    container_name: pdrcrd
    image: iampuid0/pdrcrd:latest  
    stdin_open: true # docker run -i
    tty: true        # docker run -t    
    volumes:
      - your/host/path/config:/config
      - your/host/path/log:/log
      - your/host/path/mnt:/data:shared
    environment:
      - TZ=
      - RD_API_KEY=
      - RCLONE_MOUNT_NAME=
      - RCLONE_DIR_CACHE_TIME=10s
      - PLEX_USER=
      - PLEX_TOKEN=
      - PLEX_ADDRESS=
    devices:
      - /dev/fuse:/dev/fuse:rwm
    cap_add:
      - SYS_ADMIN     
    security_opt:
      - apparmor:unconfined    
      - no-new-privileges
#    restart: unless-stopped

⁠Docker Build

⁠Docker CLI
docker build -t yourimagename https://github.com/I-am-PUID-0/pdrcrd.git

⁠Install script for Ubuntu and/or WSL

Shell script to install docker and/or pdrcrd. See the pdrcrd Wiki⁠ for details.

⁠Automatic Updates

If you would like to enable automatic updates for plex_debrid, utilize the AUTO_UPDATE environment variable. Additional details can be found in the pdrcrd Wiki⁠

⁠Environment Variables

To customize some properties of the container, the following environment variables can be passed via the -e parameter (one for each variable), or via the docker-compose file within the environment: section, or with a .env file saved to the config directory -- See the wiki for more info on using the .env⁠. Value of this parameter has the format <VARIABLE_NAME>=<VALUE>.

VariableDescriptionDefaultRequired for rclone_RDRequired for plex_debrid
TZTimeZone⁠ used by the container
RD_API_KEYRealDebrid API key⁠ :heavy_check_mark::heavy_check_mark:
AD_API_KEYAllDebrid API key⁠ :heavy_check_mark::heavy_check_mark:
RCLONE_MOUNT_NAMEA name for the rclone mount :heavy_check_mark:
RCLONE_LOG_LEVELLog level⁠ for rcloneNOTICE
RCLONE_LOG_FILELog file⁠ for rclone
RCLONE_DIR_CACHE_TIMEHow long a directory should be considered up to date and not refreshed from the backend⁠ #optional, but recommended is 10s.5m
RCLONE_CACHE_DIRDirectory used for caching⁠.
RCLONE_VFS_CACHE_MODECache mode for VFS⁠
RCLONE_VFS_CACHE_MAX_SIZEMax size of the VFS cache⁠
RCLONE_VFS_CACHE_MAX_AGEMax age of the VFS cache⁠
PLEX_USERThe Plex USERNAME⁠ for your account :heavy_check_mark:
PLEX_TOKENThe Plex Token⁠ associated with PLEX_USER :heavy_check_mark:
PLEX_ADDRESSThe URL of your Plex server. Example: http://192.168.0.100:32400⁠ or http://plex:32400⁠ - format must include http:// or https:// and have no trailing characters after the port number (32400). E.g., / :heavy_check_mark:
SHOW_MENUEnable the plex_debrid menu to show upon startup, requiring user interaction before the program runs. Conversely, if the plex_debrid menu is disabled, the program will automatically run upon successful startup. If used, the value must be true or falsetrue
PD_LOGFILELog file for plex_debrid. The log file will appear in the /config as plex_debrid.log. If used, the value must be true or falsefalse
AUTO_UPDATEEnable automatic updates of plex_debrid. Adding this variable will enable automatic updates to the latest version of plex_debrid locally within the container. No values are required.false
AUTO_UPDATE_INTERVALInterval between automatic update checks in hours. Vaules can be any positive whole⁠ or decimal⁠ point based number. Ex. a value of .5 would yield thirty minutes and 1.5 would yield one and a half hours24
DUPLICATE_CLEANUPAutomated cleanup of duplicate content in Plex.false
CLEANUP_INTERVALInterval between duplicate cleanup in hours. Vaules can be any positive whole⁠ or decimal⁠ point based number. Ex. a value of .5 would yield thirty minutes and 1.5 would yield one and a half hours24
PDRCRD_LOG_LEVELThe level at which logs should be captured. See the python Logging Levels⁠ documentation for more detailsINFO
PDRCRD_LOG_COUNTThe number logs to retain. Result will be value + current log2

⁠Data Volumes

The following table describes data volumes used by the container. The mappings are set via the -v parameter or via the docker-compose file within the volumes: section. Each mapping is specified with the following format: <HOST_DIR>:<CONTAINER_DIR>[:PERMISSIONS].

Container pathPermissionsDescription
/configrwThis is where the application stores the rclone.conf, plex_debrid settings.json, and any files needing persistence. CAUTION: rclone.conf is overwritten upon start/restart of the container. Do NOT use an existing rclone.conf file if you have other rclone services
/logrwThis is where the application stores its log files
/mntrwThis is where rclone_RD will be mounted. Not required when only utilizing plex_debrid

⁠TODO

See the pdrcrd roadmap⁠ for a list of planned features and enhancements.

⁠Deployment

pdrcrd allows for the simultaneous or individual deployment of plex_debrid and/or rclone_RD

For additional details on deployment, see the pdrcrd Wiki⁠

⁠Community

⁠pdrcrd
⁠plex_debrid

⁠Buy itsToggle⁠ a beer/coffee? :)

If you enjoy the underlying projects and want to buy itsToggle a beer/coffee, feel free to use his real-debrid affiliate link⁠ or send him a virtual beverage via PayPal⁠ :)

⁠GitHub Workflow Status

GitHub Workflow Status

Tag summary

Content type

Image

Digest

sha256:08d671378…

Size

222.2 MB

Last updated

about 2 years ago

docker pull iampuid0/pdrcrd