How to run Nginx with Docker?
Nginx is an opensource high performance and low memory usage reverse proxy for HTTP, HTTPS, POP3, SMTP, and IMAP protocols. It can be used as a load balancer, reverse proxy for other webserver or service or directly as an HTTP server.
In this tutorial, I will show you how to run a local HTTP server to serve your static website without installing anything on your machine, using only Docker.
What you will need: a computer with Docker installed, preferably running Ubuntu (or any Linux distribution) and some basic docker knowledge. Don’t forget to prepare a static HTML page or a whole website.
<!DOCTYPE html> <html> <body> <h1>My Awesome static page</h1> <p>My first paragraph about it.</p> </body> </html>
The above file will be our testing static page that will be served by Nginx. You can use anything you want, even a whole static website. You can run a simple docker Nginx image by typing
docker run --name my-nginx -d nginx, but we want to forward its
80 port to our machine’s
80 port. So, we are gonna run a Nginx container with the following arguments:
docker run --name my-nginx -p 80:80 -v /[your-path]/my-website:/usr/share/nginx/html:ro -d nginx
You can test if it works in your browser, browsing the localhost address.
Also, to list all running docker containers:
To stop it:
docker stop my-nginx
To remove the image:
docker rm my-nginx