You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
11 months ago | |
---|---|---|
docker | 11 months ago | |
.gitignore | 11 months ago | |
LICENSE | 11 months ago | |
README.md | 11 months ago | |
docker-compose.yml | 11 months ago | |
launch.sh | 11 months ago | |
resolv.conf | 11 months ago |
README.md
Windscribe VPN in Docker
This repository creates a docker image based from ubuntu:latest to add Windscribe VPN running inside the container.
Note: The container needs NET_ADMIN
capabilities to use iptables inside the container.
Edit: Here seems to be a better implementation of what I wrote from scratch :)
Setup
-
Clone this repository.
-
Run the below command to initialize windscribe and login. You can bind mount a folder instead of the volume mount for
/etc/windscribe/
, as needed.
docker run --rm -it --cap-add=NET_ADMIN -v `pwd`/resolv.conf:/etc/resolv.conf -v windscribe:/etc/windscribe adyanth/windscribe-docker:latest login
# Enter username and password when asked
# Then run the below to validate it was successful
docker run --rm -it --cap-add=NET_ADMIN -v `pwd`/resolv.conf:/etc/resolv.conf -v windscribe:/etc/windscribe adyanth/windscribe-docker:latest account
- Run the below command to start the container
docker run --rm -d --cap-add=NET_ADMIN -v `pwd`/resolv.conf:/etc/resolv.conf -v windscribe:/etc/windscribe adyanth/windscribe-docker:latest
- That's it! The container is connected to the VPN and sleeping forever! To do something with it, run the below command:
$ docker exec -it <id received in step 3> /bin/bash
[email protected]:/# apt install curl -y
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
...
Fetched 1712 kB in 18s (95.7 kB/s)
...
Setting up curl (7.68.0-1ubuntu2.5) ...
Processing triggers for libc-bin (2.31-0ubuntu9.2) ...
[email protected]:/# curl ifconfig.co
<VPN IP>
[email protected]:/#
Post setup
A docker-compose example is provided as reference. Once logged in as shown above, use it as:
$ docker-compose up
Creating network "windscribe-docker_default" with the default driver
Creating windscribe-docker_windscribe_1 ... done
Attaching to windscribe-docker_windscribe_1
windscribe_1 | Starting windscribe ... OK
windscribe_1 | Connecting to <location> (UDP:443)
windscribe_1 | Firewall Enabled
windscribe_1 | /etc/resolv.conf is not a symlink, this may break DNS
windscribe_1 | Connected to <location>
windscribe_1 | Your IP changed from <true IP> to <VPN IP>
windscribe_1 | Sleeping forever!
^CGracefully stopping... (press Ctrl+C again to force)
Stopping windscribe-docker_windscribe_1 ... done
$