You can also achieve this with any VPN by using two Docker containers:
- Gluetun: https://github.com/qdm12/gluetun
- Tailscale: https://tailscale.com/kb/1282/docker/
Set Gluetun up to connect to your VPN (they support a huge number of providers) and then set the Tailscale container to use the Gluetun's network. Then, use that Tailscale container as your exit node.
You can also combine this with a self-hosted Headscale (https://github.com/juanfont/headscale) instance.