In this Live Environment, you are working on a personal project for a friend who wants to host a website. You have a server running Docker and figure this would be a good use case to containerize the small HTML website. Create a Dockerfile that will use Nginx as the base image and set up two volumes: one volume for the HTML files and the second for logs. Then run the container using the image built from the Dockerfile.
Learning Objectives
Successfully complete this lab by achieving the following learning objectives:
- Create a Dockerfile
- Create a Dockerfile.
- Enter the
nginx
information into the file. - Build the image.
- Create a volume for the HTML files
The following command should be run:
docker volume create nginx-code
This creates a directory on the lab server:
/var/lib/docker/volumes/nginx-code/_data
- Create a volume for Nginx logs
The following command should be run:
docker volume create nginx-logs
This creates a directory on the lab server:
/var/lib/docker/volumes/nginx-logs/_data
- Create a Docker Container
This is the command that should be run:
docker run -d --name=nextgen-dev -p 80:80 --mount source=nginx-code,target=/usr/share/nginx/html --mount source=nginx-logs,target=/var/log/nginx la/static-site:latest
Use
docker ps
to show the container.Sample output:
924807c17f6f la/static-site:latest "nginx -g 'daemon of…" 28 minutes ago Up 28 minutes 0.0.0.0:80->80/tcp static-site