Merge pull request #212 from hadim/compose-doc

Update documentation for docker-compose
This commit is contained in:
Kyle Manna 2017-01-29 09:02:11 -08:00 committed by GitHub
commit aaf2c0fee1
2 changed files with 51 additions and 21 deletions

View File

@ -40,6 +40,10 @@ a corresponding [Digital Ocean Community Tutorial](http://bit.ly/1AGUZkq).
docker run -v $OVPN_DATA:/etc/openvpn --rm kylemanna/openvpn ovpn_getclient CLIENTNAME > CLIENTNAME.ovpn docker run -v $OVPN_DATA:/etc/openvpn --rm kylemanna/openvpn ovpn_getclient CLIENTNAME > CLIENTNAME.ovpn
## `docker-compose`
If you prefer to use `docker-compose` please refer to the [documentation](docs/docker-compose.md).
## Debugging Tips ## Debugging Tips
* Create an environment variable with the name DEBUG and value of 1 to enable debug output (using "docker -e"). * Create an environment variable with the name DEBUG and value of 1 to enable debug output (using "docker -e").

View File

@ -2,41 +2,67 @@
* Add a new service in docker-compose.yml * Add a new service in docker-compose.yml
version: '2' ```yaml
services: version: '2'
openvpn: services:
cap_add: openvpn:
- NET_ADMIN cap_add:
image: kylemanna/openvpn - NET_ADMIN
ports: image: kylemanna/openvpn
- "1194:1194/udp" container_name: openvpn
restart: always ports:
volumes: - "1194:1194/udp"
- ./openvpn/conf:/etc/openvpn restart: always
volumes:
- ./openvpn-data/conf:/etc/openvpn
```
* Initialize the configuration files and certificates * Initialize the configuration files and certificates
docker-compose run --rm openvpn ovpn_genconfig -u udp://VPN.SERVERNAME.COM ```bash
docker-compose run --rm openvpn ovpn_initpki docker-compose run --rm openvpn ovpn_genconfig -u udp://VPN.SERVERNAME.COM
docker-compose run --rm openvpn ovpn_initpki
```
* Fix ownership (depending on how to handle your backups, this may not be needed) * Fix ownership (depending on how to handle your backups, this may not be needed)
sudo chown -R $(whoami): ./openvpn ```bash
sudo chown -R $(whoami): ./openvpn-data
```
* Start OpenVPN server process * Start OpenVPN server process
docker-compose up -d openvpn ```bash
docker-compose up -d openvpn
```
* Generate a client certificate without a passphrase * You can access the container logs with
docker-compose run --rm openvpn easyrsa build-client-full CLIENTNAME nopass ```bash
docker-compose logs -f
```
* Generate a client certificate
```bash
export CLIENTNAME="your_client_name"
# with a passphrase (recommended)
docker-compose exec openvpn easyrsa build-client-full $CLIENTNAME
# without a passphrase (not recommended)
docker-compose exec openvpn easyrsa build-client-full $CLIENTNAME nopass
```
* Retrieve the client configuration with embedded certificates * Retrieve the client configuration with embedded certificates
docker-compose run --rm openvpn ovpn_getclient CLIENTNAME > CLIENTNAME.ovpn ```bash
docker-compose exec openvpn ovpn_getclient $CLIENTNAME > $CLIENTNAME.ovpn
```
## Debugging Tips ## Debugging Tips
* Create an environment variable with the name DEBUG and value of 1 to enable debug output (using "docker -e"). * Create an environment variable with the name DEBUG and value of 1 to enable debug output (using "docker -e").
docker-compose run -e DEBUG=1 openvpn ```bash
docker-compose run -e DEBUG=1 openvpn
```