== Prerequisites if required '''Step 1 - Install Git''' {{{$ sudo apt-get update }}} {{{$ sudo apt-get install git }}} '''Step 2 - Install Docker''' [[Docker HowTo Install]] == Install NGINX using Docker 1. On the host machine go to directory {{{cd /local/docker//}}} 2. Go to this directory and checkout from docker_nginx_ssl {{{sudo git clone https://github.com/LCBRU/docker_nginx_ssl.git}}} {{{sudo chmod -R 777 docker_nginx_ssl/}}} This will create a directory /local/docker//docker_nginx_ssl 3. Move to this directory {{{cd /local/docker//docker_nginx_ssl/}}} 4. Ensure you have the directory /share on your host machine. Copy nginx.conf to /share {{{cp nginx.conf /share}}} 5. Create a directory /share/cert/live ensure the files .cer .csr .key already exist. If not read [[NGINX Generate SSL Certificate]] 6. Configure /share/nginx.conf as necessary to include files and set client direct requests to the appropriate backend webapps. Make sure the '''IP addresses''' are correct. 7. Modify index.html as necessary {{{sudo vi /local/docker//docker_nginx_ssl/index.html}}} 8. To build the image : {{{sudo docker build -t lcbruit/nginx_ssl:v1.1 .}}} 9. To run the docker container : {{{sudo docker run -d -p 80:80 -p 443:443 -e 'DH_SIZE=512' -v /share:/etc/nginx/external/ lcbruit/nginx_ssl:v1.1}}} 10. Test NGINX : {{{http://XXXXXXXXXXXXXX.xuhl-tr.nhs.uk}}} 11. Test necessary client direct requests === Further Info === NGINX acts as a reverse proxy and directs client requests to the appropriate back-end applications For example docker_redcap_upgrade Port 82 docker_appointments Port 81