Git Product home page Git Product logo

docker-flexget's Introduction

logo

FlexGet in Docker (with UI)

Forked from cpoppema/docker-flexget and updated with some additional packages.

Usage

docker create \
    --name=flexget \
    -e PGID=<gid> -e PUID=<uid> \
    -p 5050:5050 \
    -v <path to data>:/config \
    -v <path to downloads>:/downloads \
    derbenni/docker-flexget

This container is based on phusion-baseimage with ssh removed. For shell access whilst the container is running do docker exec -it flexget /bin/bash.

Parameters

  • -e PGID for GroupID - see below for explanation
  • -e PUID for UserID - see below for explanation
  • -p 5050 for Web UI port - see below for explanation
  • -v /config - Location of FlexGet config.yml (DB files will be created on startup and also live in this directory)
  • -v /downloads - location of downloads on disk

First run

This is important: Before running this container for the first time make sure there's a config.yml available in the host directory mounted at /config. There's no default config file provided, because everyone uses FlexGet differently. Take a look at this page for a good example of a basic config.yml.

Transmission

FlexGet is able to connect with transmission using transmissionrpc, which is pre-installed in this container. For more details, see http://flexget.com/wiki/Plugins/transmission.

Please note: This Docker image does NOT run Transmission. Consider running a Transmission Docker image alongside this one.

Daemon mode

This container runs flexget in daemon mode. 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 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.

Web UI

FlexGet is able to host a Web UI if you have this enabled in your configuration file. See the wiki for all details. To get started, simply add:

web_server: yes

The Web UI is protected by a login, you need to setup a user after starting this docker.

Connect with the running docker:

docker exec -it flexget bash

If your configuration file is named "config.yml" you can setup a password like this:

flexget -c /config/config.yml web passwd <some_password>

Now you can open the Web UI at http://<ip-of-the-machine-running-docker>:5050 and login with this password, use flexget as your username.

User / Group Identifiers

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).

Part 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.

Updates / Monitoring

  • Upgrade to the latest version of FlexGet simply docker restart flexget.
  • Monitor the logs of the container in realtime docker logs -f flexget.

docker-flexget's People

Contributors

ajpierce avatar benni3005 avatar cpoppema avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.