Dockerflix is a nice little project that allows you to route your Netflix (and other various streaming services) through a SNI Proxy to access content otherwise geo-blocked. Of course, this requires that you have a VM with for instance an US IP to provide the breakout network, and that’s where Ravello Systems comes into the equation. Luckily as a current vExpert I have access to 1000 free monthly CPU hours of personal/lab usage, all with a choice of regions to put the VM in. Perfect.
I created a VMware Photon based VM on Ravello, with an Elastic IP that allows the IP to stick to the VM, even if it’s moved to another public cloud, and installed Dockerflix. VMware Photon doesn’t come with docker-compose, which Dockerflix is dependant on, check Install Docker Compose for details on how to install it. Once that is installed, run the following command to download and install Dockerflix.
git clone https://github.com/trick77/dockerflix.git
Setup of Dockerflix itself is pretty straight forward, just follow the README provided by the project. Make sure you enable http/https/ssh to the VM with a public IP. Once that was done, I set up dnsmasq on one of the Linux VMs in my home-lab, with the output config the python script provided by Dockerflix.
python ./gendns-conf.py --remoteip [RAVELLO_PUBLIC_IP]
Note: Running this permanently would be a violation of the Ravello vExpert Terms of Service. This is to be considered a technical Proof of Concept, more than a permanent setup. I haven’t investigated the possibility to set up something like this permanently on either vCloud Air, AWS, Azure or Google Cloud Platform, or if you are even allowed to do so. But then again, all you are doing is routing IP traffic…
As far as testing goes, I experienced no problems with bandwidth or anything else. Streaming was perfect, and seamless. The fact that I was routing the traffic through a VM running in the US was not noticeable at all.
Configuring it was a great exercise. Not only did I get to play with VMware Photon and Docker, but it also shows that using Ravello Systems to perform Proof of Concept scenarios is perfectly viable, even enjoyable.