{"user":"cpoppema","name":"docker-flexget","namespace":"cpoppema","repository_type":"image","status":1,"status_description":"active","description":"","is_private":false,"is_automated":true,"star_count":25,"pull_count":19707566,"last_updated":"2020-12-28T20:50:06.38203Z","last_modified":"2024-10-16T13:48:34.145251Z","date_registered":"2015-07-24T17:30:55.801727Z","collaborator_count":0,"affiliation":null,"hub_user":"cpoppema","has_starred":false,"full_description":"# cpoppema/docker-flexget\n\n[![Build Status](https://img.shields.io/docker/build/cpoppema/docker-flexget.svg)](https://hub.docker.com/r/cpoppema/docker-flexget/builds)\n[![Image Size](https://img.shields.io/microbadger/image-size/cpoppema/docker-flexget.svg?style=flat\u0026color=blue)](https://hub.docker.com/r/cpoppema/docker-flexget)\n[![Docker Stars](https://img.shields.io/docker/stars/cpoppema/docker-flexget.svg?style=flat\u0026color=blue)](https://registry.hub.docker.com/v2/repositories/cpoppema/docker-flexget/stars/count/)\n[![Docker Pulls](https://img.shields.io/docker/pulls/cpoppema/docker-flexget.svg?style=flat\u0026color=blue)](https://registry.hub.docker.com/v2/repositories/cpoppema/docker-flexget/)\n[![Docker Automated build](https://img.shields.io/docker/automated/cpoppema/docker-flexget.svg?maxAge=2592000\u0026style=flat\u0026color=blue)](https://github.com/cpoppema/docker-flexget/)\n[![Buy Me A Coffee](https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg)](https://www.buymeacoffee.com/cpoppema)\n\nRead all about FlexGet [here](http://www.flexget.com/#Description).\n\nIf you do not have a configuration already, you can look around starting off with something like this [config.yml](https://github.com/cpoppema/docker-flexget/blob/master/sample_config.yml):\n```\nweb_server: yes\n\nschedules:\n  - tasks: '*'\n    interval:\n      minutes: 1\n\ntasks:\n  test task:\n    rss: http://myfavoritersssite.com/myfeed.rss\n    series:\n      - My Favorite Show\n```\nPut this file in your data/config folder as `config.yml`.\n\nFor a much better FlexGet config.yml example take a look at the bottom of [this page](http://flexget.com/Cookbook/Series/SeriesPresetMultipleRSStoTransmission).\n\n## Note\n\nRecently the python version inside this image had to be upgraded from 2.x to 3.x, this might result in this error message:\n\n```\nINFO     scheduler                     Starting scheduler\nINFO     apscheduler.scheduler                 Scheduler started\nERROR    apscheduler.jobstores.default                 Unable to restore job \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\" -- removing it\nTraceback (most recent call last):\n  File \"/usr/lib/python3.7/site-packages/apscheduler/jobstores/sqlalchemy.py\", line 141, in _get_jobs\n    jobs.append(self._reconstitute_job(row.job_state))\n  File \"/usr/lib/python3.7/site-packages/apscheduler/jobstores/sqlalchemy.py\", line 125, in _reconstitute_job\n    job_state = pickle.loads(job_state)\nUnicodeDecodeError: 'ascii' codec can't decode byte 0xe3 in position 1: ordinal not in range(128)\n```\n\nThis is supposedly safe to ignore and should only happens once. If not, let me [know](https://github.com/cpoppema/docker-flexget/issues).\n\n## Usage\n\n```\ndocker create \\\n    --name=flexget \\\n    -e PGID=\u003cgid\u003e -e PUID=\u003cuid\u003e \\\n    -e WEB_PASSWD=yourhorriblesecret \\\n    -e TORRENT_PLUGIN=transmission \\\n    -e TZ=Europe/London \\\n    -e FLEXGET_LOG_LEVEL=debug \\\n    -p 5050:5050 \\\n    -v \u003cpath to data\u003e:/config \\\n    -v \u003cpath to downloads\u003e:/downloads \\\n    cpoppema/docker-flexget\n```\n\nFor shell access whilst the container is running do `docker exec -it flexget /bin/bash`.\n\n**Parameters**\n\n* `-e PGID` for GroupID - see below for explanation\n* `-e PUID` for UserID - see below for explanation\n* `-e WEB_PASSWD` for the Web UI password - see below for explanation\n* `-e TORRENT_PLUGIN` for the torrent plugin you need, e.g. \"transmission\" or \"deluge\"\n* `-e TZ` for timezone information, e.g. \"Europe/London\"\n* `-e FLEXGET_LOG_LEVEL` for logging level - see below for explanation\n* `-p 5050` for Web UI port - see below for explanation\n* `-v /config` - Location of FlexGet config.yml (DB files will be created on startup and also live in this directory)\n* `-v /downloads` - location of downloads on disk\n\n**Torrent plugin: Transmission**\n\nFlexGet is able to connect with transmission using `transmissionrpc`, which is installed as the default torrent plugin in this container. For more details, see http://flexget.com/wiki/Plugins/transmission.\n\nPlease note: This Docker image does NOT run Transmission. Consider running a [Transmission Docker image](https://github.com/linuxserver/docker-transmission/) alongside this one.\n\nFor transmission to work you can either omit the `TORRENT_PLUGIN` environment variable or set it to \"transmission\".\n\n**Torrent plugin: Deluge**\n\nFlexGet is also able to connect with deluge using `deluge-common`, which can be installed in this container, replacing the transmission plugin. For more details, see https://www.flexget.com/Plugins/deluge.\n\nPlease note: This Docker image does NOT run Deluge. Consider running a [Deluge Docker image](https://hub.docker.com/r/linuxserver/deluge/) alongside this one.\n\nFor deluge to work you need to set `TORRENT_PLUGIN` environment variable to \"deluge\".\n\n**Daemon mode**\n\nThis container runs flexget in [daemon mode](https://flexget.com/Daemon). This means by default it will run your configured tasks every hour after you've started it for the first time. If you want to run your tasks on the hour or at a different time, look at the [scheduler](https://flexget.com/Plugins/Daemon/scheduler) plugin for configuration options. Configuration is automatically reloaded every time just before starting the tasks as scheduled, to apply your changes immediately you will need to restart the container.\n\n**Web UI**\n\nFlexGet is able to host a Web UI if you have this enabled in your configuration file. See [the wiki](https://flexget.com/wiki/Web-UI) for all details. To get started, simply add:\n\n```\nweb_server: yes\n```\n\nThe Web UI is protected by a login, you need to either set the `WEB_PASSWD` environment variable or setup a user after starting this docker:\n\nConnect with the running docker:\n\n```\ndocker exec -it flexget bash\n```\n\nIf your configuration file is named \"config.yml\" you can setup a password like this:\n\n```\nflexget -c /config/config.yml web passwd \u003csome_password\u003e\n```\n\nNow you can open the Web UI at `http://\u003cip-of-the-machine-running-docker\u003e:5050` and login with this password, use `flexget` as your username.\n\nNote: if you ever change your password in a running container, don't worry. Recreating or restarting your container will not simply overwrite your new password. If you want to reset your password to the value in `WEB_PASSWD` you can simply remove the `.password-lock` file in your config folder.\n\n**Logging Level**\n\nSet the verbosity of the logger. Optional, defaults to debug if not set. Levels: critical, error, warning, info, verbose, debug, trace.\n\n### User / Group Identifiers\n\n**TL;DR** - The `PGID` and `PUID` values set the user / group you'd like your container to 'run as' to the host OS. This can be a user you've created or even root (not recommended).\n\nPart of what makes this container work so well is by allowing you to specify your own `PUID` and `PGID`. This avoids nasty permissions errors with relation to data volumes (`-v` flags). When an application is installed on the host OS it is normally added to the common group called users, Docker apps due to the nature of the technology can't be added to this group. So this feature was added to let you easily choose when running your containers.\n\n[Flexget CLI](https://flexget.com/CLI)\n\n## Updates / Monitoring\n\n* Upgrade to the latest version of FlexGet simply `docker restart flexget`.\n* Monitor the logs of the container in realtime `docker logs -f flexget`.\n\n**Credits**\n* [linuxserver.io](https://github.com/linuxserver) for providing awesome docker containers.\n","permissions":{"read":true,"write":false,"admin":false},"media_types":["application/vnd.docker.distribution.manifest.list.v2+json","application/vnd.docker.container.image.v1+json"],"content_types":["image"],"categories":[],"immutable_tags_settings":{"enabled":false,"rules":[".*"]},"storage_size":6902721494,"source":null}