Nefarious

Web application that automates downloading Movies and TV Shows.

Directory Structure

    • .env
    • docker-compose.yml

docker-compose.yml

version: '2.4'
 
services:
 
  # nefarious main application
  nefarious:
    extends:
      service: nefarious-app-base
      file: docker-compose.base.yml
    depends_on:
      - redis
      - jackett
      - celery
 
  # nefarious background task queue
  celery:
    extends:
      service: celery-worker
      file: docker-compose.base.yml
    depends_on:
      - redis
 
  # nefarious background task queue scheduler
  celery-scheduler:
    extends:
      service: celery-scheduler
      file: docker-compose.base.yml
    depends_on:
      - redis
 
  # database for task queue
  redis:
    image: redis
    restart: always
    mem_limit: 200m
    # NOTE: use "ports" when developing so local dev server can access redis
    #ports:
    #  - "6379:6379"
    expose:
      - 6379
 
  # torrent indexer service
  jackett:
    extends:
      service: jackett-base
      file: docker-compose.base.yml
    ports:
      - "9117:9117"
 
  # torrent server
  transmission:
    extends:
      service: transmission-base
      file: docker-compose.base.yml
    image: linuxserver/transmission
 
  # auto update service
  watchtower:
    extends:
      service: watchtower-base
      file: docker-compose.base.yml
 
volumes:
  nefarious-db:
  jackett-config:

.env

# host download path
HOST_DOWNLOAD_PATH=/tmp/
 
# nefarious user and password
NEFARIOUS_USER=admin
NEFARIOUS_PASS=admin
 
# file permissions: define your user and group id so transmission downloads using proper file permissions
# to find out your uid and gid, run:
#   id -u
#   id -g
HOST_DOWNLOAD_UID=1000
HOST_DOWNLOAD_GID=1000
 
# number of workers for searching and downloading.
# leave as "0" to use the maximum number of CPUs on the system
NUM_CELERY_WORKERS=0
 
#########################################################
# vpn settings - leave blank if not using a vpn
# https://haugene.github.io/docker-transmission-openvpn/
#########################################################
OPENVPN_PROVIDER=
OPENVPN_USERNAME=
OPENVPN_PASSWORD=
OPENVPN_CONFIG=
LOCAL_NETWORK=192.168.1.0/24
# IPv6 - leave blank if your vpn doesn't require it
# 0=ipv6 enabled, 1=ipv6 disabled
VPN_IPV6_DISABLED=

Resources

Website: https://lardbit.github.io/nefarious/

GitHub: https://github.com/lardbit/nefarious

Docker Hub: https://hub.docker.com/r/lardbit/nefarious

Configuration: https://github.com/lardbit/nefarious#setup