# NGINX with DOCKER ## Summary - Serving Static Content (HTML, CSS, JavaScript) - Reverse Proxy (load balancing ): forward requests from clients to backend servers which handle the requests. - API Gateway(distributing traffic): Acts as a single entry point for all API requests and distributing traffic - SSL/TLS Termination: it decrypts incoming traffic, inspects it, and then re-encrypts it before sending it to the backend servers. - Caching: NGINX can also be used as an HTTP cache, which can improve website performance by caching frequently requested content and serving it directly from memory - load balancing **All the above can be set in Config**: etc/nginx/nginx.conf ## Pre-Req: - Docker is already installed in the system. - Note:By default nginx runs on port 80 ### Example 1 -------------------------- nginx.sh ---------------------------- cd ~/Desktop mkdir nginx cd nginx echo '\<html\>\<body\> hi\</body\>\</html\>' >> test2.html -------------------------------------------------------- docker run -it --rm -d -p 8080:80 --name web -v $PWD:/usr/share/nginx/html nginx open browser http://localhost:8080/test2.html docker stop container_id ### Example 2 docker run -p 8000:80 --name nginx_test nginx:latest - open browser - open link localhost:8000 (You should be able to see the html page) - ctrl+c (to quit) - docker rm nginx_test