Skip to content

Container Overrides

To persist custom Compose settings — such as environment variables, volume mounts, or other overrides — without modifying the generated Compose files, create a docker-compose.override.yml file at /opt/hms-docker/docker-compose.override.yml with only the settings you want to override or merge.

Documentation on how this works can be found here: Merge | Docker Docs

Only enabled containers can be specified in this file. If a disabled container is listed, Docker Compose will fail validation with an error. Remove any disabled containers from the override file to resolve.

Here is a basic example of this file (assuming Sonarr, Radarr, and Plex are enabled) that will not override any settings:

/opt/hms-docker/docker-compose.override.yml
services:
sonarr:
radarr:
plex:
...

If you want to check the final Compose configuration after modification of the override file, you can run:

Terminal window
sudo docker compose config

The Deluge and qBittorrent containers natively support PIA. Set the following in inventory/group_vars/all/vpn.yml:

hmsdocker_vpn_type: wireguard
hmsdocker_vpn_provider: pia
hmsdocker_vpn_user: <your PIA username>
hmsdocker_vpn_pass: <your PIA password>

hmsdocker_vpn_provider is passed through to the container’s VPN_PROV; with pia the container generates its own WireGuard config, so you don’t supply a wg0.conf.

PIA port forwarding only connects to endpoints that support it (see Q15 of the Binhex docs). It isn’t a playbook variable, so enable it by adding STRICT_PORT_FORWARD=yes to the override file (/opt/hms-docker/docker-compose.override.yml):

/opt/hms-docker/docker-compose.override.yml
services:
qbittorrent:
environment:
- STRICT_PORT_FORWARD=yes
deluge:
environment:
- STRICT_PORT_FORWARD=yes