wiserain / docker-flexget

Docker image for running Flexget
https://hub.docker.com/r/wiserain/flexget
68 stars 40 forks source link
docker flexget python3

docker-flexget

Docker image for running flexget

Container features are

Usage

docker run

docker run -d \
    --name=<container name> \
    --restart on-failure:5 \
    -p 5050:5050 \
    -v <path for data files>:/data \
    -v <path for config files>:/config \
    -e PUID=<UID for user> \
    -e PGID=<GID for user> \
    -e TZ=<timezone> \
    -e FG_WEBUI_PASSWD=<desired password> \
    wiserain/flexget

docker-compose

version: "3"
services:
  flexget:
    image: wiserain/flexget
    container_name: <container name>
    restart: on-failure:5
    ports :
      - 5050:5050
    volumes:
      - <path for data files>:/data
      - <path for config files>:/config
    environment:
      - PUID=<UID for user>
      - PGID=<GID for user>
      - TZ=<timezone>
      - FG_WEBUI_PASSWD=<desired password>

Most importantly, secure webui using FG_WEBUI_PASSWD.

Environment variables

ENV Description Default
PUID / PGID | uid and gid for running an app | 911 / 911
TZ timezone
FG_WEBUI_PASSWD use a strong password
FG_LOG_LEVEL | log level | info
FG_LOG_FILE | log file name | flexget.log
FG_PLUGINS see below
FIX_DIR_OWNERSHIP_CONFIG | set something other than 1 or true to skip applying chown for dir /config | 1
FIX_DIR_OWNERSHIP_DATA | set something other than 1 or true to skip applying chown for dir /data | 1

Additional packages

If there are additional packages you may want to install, create bash script with any name under /custom-cont-init.d, for example,

#!/usr/bin/with-contenv bash
apk add -q --no-cache <alpine pkgs>
pip install <python pkgs>

Then, it will run every container start. Please find more details here.

Or, you can have a built-in script do this by setting environment variables as follows.

-e "INSTALL_APK_PKGS=build-base python3-dev" \
-e INSTALL_PIP_PKGS=guppy3

Custom plugins

You can install custom plugins by FG_PLUGINS="{plugin_name_1} {plugin_name_2}" whose value is a space-separated list of plugin names. Currently available ones are