This is a simple VPN client that enables Tray users to connect to their own dedicated Tray environment via a secure private network.
Please note that you need to have a dedicated Tray account and the credentials file provided to you in order to use this VPN client.
In order to build and run this VPN client, make sure that you have Docker installed on your local machine.
As this image is designed to use the host's network interface, only Docker on Linux is supported at this time.
Finally, make sure that you've downloaded the credentials file and store it on the host machine where this container will be deployed.
To build the container, simply clone the repository and run the build command:
docker build -t tray-vpn-client:latest .To start the VPN client, simply run this command:
docker run -d \
--rm \
--network=host
--cap-add=NET_ADMIN \
--cap-add=SYS_MODULE \
--env-file /path/to/tray-vpn-credentials.env \
tray-vpn-client:latestIn situations where passing a variable file might not be available to you, you can also pass the variables using the -e or `--env' options. For example:
docker run ... --env VAR1=value1 --env VAR2=value2 ... tray-vpn-client:latestThe values can be omitted if they are already set on the host's environment variable. For example:
export VAR1=value1
export VAR2=value2
docker run ... --env VAR1 --env VAR2 ... tray-vpn-client:latestFor more details, refer to the Docker Run documentation for other options available for you, such as adding a nice name to the container.
Here's a little explanation about the different parameters used to run the docker container:
- The
-doption starts the container in the background (detached). - The
--rmoption ensures that the container is removed once it exits/stops. - The
--networkoption enables the container to directly interface with the host's network. - The
--cap-addoption adds additional capabilities for Linux to modify system level network. - The
--env-fileoption imports the credential files provided by Tray.
Note that the --rm flag is added for convenience but you may choose to omit it to help with troubleshooting purposes.
If you discover any problems or want to suggest ideas to improve this VPN client, please open an issue here before submitting a PR.