mirror of
https://github.com/jessfraz/dockerfiles.git
synced 2024-11-23 19:32:30 +01:00
38 lines
1.2 KiB
Markdown
38 lines
1.2 KiB
Markdown
# LMCTVPNFY
|
|
|
|
Let Me Containerize That VPN For You
|
|
|
|
|
|
## How to use this?
|
|
|
|
Drop your OpenVPN configuration file in this directory.
|
|
|
|
Let's pretend that it's called `hacktheplanet.ovpn`.
|
|
|
|
Then all you have to do is to run:
|
|
|
|
```
|
|
docker-compose run vpn hacktheplanet.ovpn
|
|
```
|
|
|
|
If you need a password (because your OpenVPN configuration specifies `auth-user-pass`) you will be prompted for it.
|
|
|
|
If the VPN server pushes routes and so forth, they will be added to your machine, because the Compose file specifies `net: host` so the container runs within the hosts namespace.
|
|
|
|
If you **don't** need to specify a password, you can use `docker-compose run -d vpn hacktheplanet.ovpn` to start the container in the background.
|
|
|
|
If you OpenVPN configuration needs extra files (certificates etc) you can drop them in this directory too.
|
|
|
|
|
|
## How to fix DNS
|
|
To let OpenVPN change your resolv.conf file you need to add 2 scripts to your configuration to trigger the Alpine provided scripts.
|
|
```
|
|
up /usr/share/openvpn/up.sh
|
|
down /usr/share/openvpn/down.sh
|
|
```
|
|
|
|
## Why?
|
|
|
|
Because we're the containerati and we like when things are [neatly arranged in their boxes](https://twitter.com/zooeypeng/status/613053137050439681).
|
|
|