Reverse Proxy ============= To Start the reverse nginx-proxy: docker run -d -p 80:80 -e DEFAULT_HOST=foo.bar.com \ -v /var/run/docker.sock:/tmp/docker.sock:ro \ jwilder/nginx-proxy The DEFAULT_HOST can be omitted. We then add a new virtual host by specifying the env variable VIRTUAL_HOST: docker run -e VIRTUAL_HOST=foo.bar.com ... Remember to use --restart=always to enable restart of the service Website Data ============ A Website data container requires 3 volumes: - /www - /git - /etc/nginx (TODO) docker create --name <custom-name> website-data Website ======= We use crotal as demo for website container. This provides an ssh server that needs to be exposed. docker run --name <website>_repo \ -d -p 2022:22 --volumes-from <website-data-container> \ --restart always \ crotal Expose the website using a nginx server: docker run --name <website>_www \ -d -e VIRTUAL_HOST=<url> \ --volumes-from <website-data-container> \ --restart always \ nginx-local Use the command run_crotal.sh to initialize the website docker run --rm -ti --volumes-from <website-data-container> crotal /run_crotal.sh SSH Reverse Proxy ================= Incomplete!!! Use the 'command' option to forward the ssh connection. This is not complete yet, since a sensible strategy to share public/private keys needs to be found.