Skip to content

Instantly share code, notes, and snippets.

@pastleo
Created November 9, 2017 16:48
Show Gist options
  • Save pastleo/93d79f9a8294d9b21717f24ebb804d9b to your computer and use it in GitHub Desktop.
Save pastleo/93d79f9a8294d9b21717f24ebb804d9b to your computer and use it in GitHub Desktop.
openvpn docker compose with howto
version: '3.2'
volumes:
data:
driver: local
services:
openvpn:
cap_add:
- NET_ADMIN
image: kylemanna/openvpn
container_name: openvpn
ports:
- "1194:1194/udp"
restart: always
volumes:
- data:/etc/openvpn
send:
image: leastauthority/magic-wormhole
entrypoint:
- /app/env/bin/wormhole
- send
volumes:
- data:/etc/openvpn
working_dir: /etc/openvpn
# copy and modified from
# https://github.com/kylemanna/docker-openvpn/blob/master/docs/docker-compose.md
# =============================
#
# init:
# docker-compose run --rm openvpn ovpn_genconfig -u udp://VPN.SERVERNAME.COM
# docker-compose run --rm openvpn ovpn_initpki
#
# up:
# docker-compose up -d openvpn
#
# generate a client config:
# docker-compose exec openvpn bash
# inside container:
# easyrsa build-client-full CLIENTNAME [nopass] # generate client key, will prompt for some info
# ovpn_getclient CLIENTNAME > /etc/openvpn/CLIENTNAME.ovpn # generate client config
# exit
#
# send the key using magic-wormhole:
# docker-compose run --rm send CLIENTNAME.ovpn
#
# to receive the .ovpn file on the client, please refer to https://github.com/warner/magic-wormhole
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment