Skip to content

Instantly share code, notes, and snippets.

@csima
Last active April 3, 2018 05:25
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save csima/be369cffe97ea989a6dcb64009fa6f7f to your computer and use it in GitHub Desktop.
Save csima/be369cffe97ea989a6dcb64009fa6f7f to your computer and use it in GitHub Desktop.
Dockerfile for AlgoVPN (https://github.com/trailofbits/algo)
# docker volume create algo
# docker build -t algo .
# docker run -v algo:/algo -v (local folder):/mnt -it algo
#
# - edit users in config.cfg
# - run /algo/start
#
# Adding or Removing Users
# If you chose the save the CA certificate during the deploy process, then Algo's own scripts can easily add and remove users from the VPN server.
# Update the users list in your config.cfg
# Open a terminal, cd to the algo directory, and activate the virtual environment with source env/bin/activate
# Run the command: ./algo update-users
FROM ubuntu:16.04
RUN apt-get update -y && apt-get upgrade -y && apt-get install -y build-essential \
libssl-dev libffi-dev python-dev python-pip python-setuptools python-virtualenv git-core vim
RUN git clone https://github.com/trailofbits/algo
RUN echo "#! /bin/bash" > /algo/start
RUN echo "python -m virtualenv --python=`which python2` /algo/env && source /algo/env/bin/activate && python -m pip install -U pip && python -m pip install -r /algo/requirements.txt && /algo/algo" >> /algo/start
RUN echo "cp -R /algo/configs /mnt/algo-configs" >> /algo/start
RUN echo "echo 'copied /algo/configs to /mnt/algo-configs'" >> /algo/start
RUN chmod +x /algo/start
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment