I want to run a docker container (kmb32123/youtube-dl-server) through a VPN in order to access geo blocked content. I found a suitable VPN docker image (ilteoood/docker-surfshark). I am trying to combine these two images in a single docker-compose.yml file. However, I'm unable to publish the ports for youtube-dl-server because of conflicting options.
conflicting options: port publishing and the container type network mode
Is there an alternative way to have youtube-dl-server route traffic though the docker-surfshark container while still exposing port 8080 locally so I can access it?
version: "2"
services:
surfshark-uk:
image: ilteoood/docker-surfshark
container_name: surfshark
environment:
- SURFSHARK_USER=foo
- SURFSHARK_PASSWORD=bar
- SURFSHARK_COUNTRY=uk
- CONNECTION_TYPE=udp
cap_add:
- NET_ADMIN
devices:
- /dev/net/tun
restart: unless-stopped
youtube-dl-uk:
image: "kmb32123/youtube-dl-server"
container_name: yt-download-uk
network_mode: container:surfshark-uk
depends_on:
- surfshark-uk
ports:
- 8080:8080
volumes:
- /Users/greg/Desktop/ukvids:/youtube-dl
restart: unless-stopped
greg@computer docker $ docker-compose up
WARNING: Found orphan containers (surfshark, 949001ea6405_yt-download-uk) for this project. If you removed or renamed this service in your compose file, you can run this command with the --remove-orphans flag to clean it up.
Creating surfshark-uk ... done
Creating yt-download-uk ... error
ERROR: for yt-download-uk Cannot create container for service youtube-dl-uk: conflicting options: port publishing and the container type network mode
ERROR: for youtube-dl-uk Cannot create container for service youtube-dl-uk: conflicting options: port publishing and the container type network mode
ERROR: Encountered errors while bringing up the project.
I think publishing port in surfshark-uk container will do the same job as youtube-dl-uk as its using network of surfshark-uk. so the port will be accessible on your host when try to hit
curl localhost:8080
yt-download-uk | 172.26.0.1 - - [28/Jun/2020 02:03:17] "GET / HTTP/1.1" 404 720
So update docker-compose file and it should work.
surfshark-uk:
image: ilteoood/docker-surfshark
container_name: surfshark
ports:
- 8080:8080
The port forwarding takes place with the VPN container, not the one that reuses its IP stack.
port publishing and the container type network mode
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With