For some people, privacy is a necessity for using services. Here you can route all querying of Jackett requests through Tor, the onion router.

Or you're probably reading this because you're tired of updating your Jackett settings every time a torrent site goes down or your ISP blocks a URL.

Note: This post will not show you how to setup a VM or docker. I am also not responsible for how you utilise your setup and do not advocate using this for illegal activities.

To start off, I used a docker container due to one being available with my exact needs. https://hub.docker.com/r/dperson/torproxy/. This container will set up a Privoxy server and hook it into the Tor network. It will also expose a HTTP proxy and a SOCKS proxy, however I will not be using the SOCKS proxy in this setup due to Jackett being a .NET program and HttpConnections in .NET not allowing SOCKS protocols.

Below is a docker-compose.yml file

version: "3.3"

services:
  torproxy:
    restart: unless-stopped
    image: dperson/torproxy:latest
    container_name: torproxy
    ports:
      - "8118:8118"
    build:
      context: .
      args:
        b: 500 # Use a maximum of 500 kilobytes per second
      
  jackett:
    restart: unless-stopped
    image: linuxserver/jackett:latest
    container_name: jackett
    depends_on:
      - torproxy
    links:
      - torproxy
    ports:
      - "9117:9117"
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/London
      - RUN_OPTS=--ProxyConnection=torproxy:8118
    #volumes:
      # Mount your volumes for config & blackhole directory here based on https://hub.docker.com/r/linuxserver/jackett

Then to start it up,

docker-compose up -d

To test, you can run the following:

curl -x localhost:8118 http://<an onion link>.onion