-
Notifications
You must be signed in to change notification settings - Fork 15
Getting Started: 2. Configuring Marauder
Marauder uses a .env
environment variable file to configure Rclone. This section will walk you through obtaining those.
By default, Marauder will use Rclone's crypt
mount to encrypt all files (and their filenames) on the Team Drive. If you wish to change this behaviour you can edit the rclone_conf/rclone_multi_template
file, but the defaults do work.
We need to dedicate a service account to each of the mounts, so we simply rename a couple of our service accounts for that job.
sudo mv service_accounts/marauder1-*.json service_accounts/rclone_mount_download.json
sudo mv service_accounts/marauder2-*.json service_accounts/rclone_mount_plex.json
- Make a copy of the template file
cp rclone.env.template rclone.env
- Fill the template out with the below information.
If you have previously set up Rclone with encryption, you can take password
and password2
from your rclone.conf
file and use them here.
If you need to generate new encryption keys, Marauder includes a container that borrows the script that Rclone uses to create its encrypted keys.
The following command will output two freshly generated encryption keys for you:
setup/generate_rclone_keys.sh
Note that if you ever lose these keys, you will lose access to all the data uploaded to Google Drive! Make sure you back these up safely!
This is the top level encrypted folder. It should be encrypted
.
This is a list of space-separated team drive IDs that you should have noted down when doing part 1.
The .env
file is used to configure the stack itself. If you happen to be using my Nginx Reverse Proxy Config Generator then you can set the domain
var to generate subdomains and config. The plex_domain
and plex_host
vars are used so Plex trusts forwarded requests to that domain.
The rest of the env vars are used to enable/disable services or change certain advanced settings, eg switching the cache mode for Rclone's VFS.
cp .env.template .env
The plex.env
file is used to configure Plex. You can set the PLEX_CLAIM
token, which can be used to claim the Plex server on initial startup instead of going through the login flow. You can obtain a Plex claim token from here.
You can also switch the cache mode for Rclone's VFS here. It defaults to full
, which may use up more disk space but can help with buffering.
cp plex.env.template plex.env
If you wish to enable Traktarr (which automatically adds Movies/TV to Radarr/Sonarr), you can set it up here. By default, it grabs the top 500 from every single list I could find. That's probably over the top for you. Refer to Traktarr's Docs for config settings. You'll need to add your Radarr/Sonarr API keys after first startup, but you can add your OMDB and Trakt keys in advance if you like.
See Service Configuration: Traktarr for more information on finding these keys.
cp traktarr.json.template traktarr.json
You should now have an rclone.env
that looks something like this:
# Rclone
SECRETS_SET=true
rclone_encryption_password1=7nMwYhDFUkikVuXezHM5IKIfTKzY1xRhTRJ7n2oFR4tH9CN_
rclone_encryption_password2=mPDwbGcnFW0pCttUhPAxYNfj4Ttalldgcic7v5xoAp1zv
rclone_gdrive_mount_folder=encrypted
rclone_team_drive_ids=0Afoobzlzsasfaf9PVA 0Abarbaroow9fooPVA 0ff-b1hhfNoXboo9PVA
and a .env
that looks something like this:
domain=example.com
plex_domain=plex.example.com
plex_host=127.0.0.1
nzbhydra_enabled=1
radarr_enabled=1
sonarr_enabled=1
sabnzbd_enabled=1
traktarr_enabled=1
medusa_enabled=0
headphones_enabled=0
lazylibrarian_enabled=0
mylar_enabled=0
bazarr_enabled=1
jackett_enabled=1
transmission_enabled=0
watchtower_enabled=1
plex_enabled=1
rclone_enabled=1
and a plex.env
that looks something like this:
PLEX_CLAIM=claim-somearbitrarystringhere
You can now move on to the next step, Starting the Stack.