What does HackerNews think of gluetun?
VPN client in a thin Docker container for multiple VPN providers, written in Go, and using OpenVPN or Wireguard, DNS over TLS, with a few proxy servers built-in.
TBH I find Docker networking a struggle and usually disable the `iptables` stuff and end up configuring my own rules. Painful, but at least less intrusive.
On the note of Tailscale+Docker networking, gluetun[0] is pretty awesome. It runs a Wireguard (not tailscale compatible, yet) instance within a Docker container and then you share that networking namespace with the other containers effectively confining them to the VPN. Comes with basic container namespace firewall configuration and DNS over TLS configuration.
I used to use https://github.com/dperson/openvpn-client which has a killswitch option as well.
By kill-switch I mean iptables rules that don't let anything out if there's no VPN interface up. So you don't run the risk of leaking torrent stuff through your plain-text connection if the VPN goes down.