11.2 Nginx
Nginx是一款功能强大的开源反向代理服务器,支持HTTP、HTTPS、SMTP、POP3、IMAP等协议。它也可以作为负载均衡器、HTTP缓存或Web服务器。Nginx一开始就专注于高并发和高性能的应用场景。它使用类BSD开源协议,支持Linux、BSD、Mac、Solaris、AIX等类Unix系统,同时也有Windows上的移植版本。

本节将介绍Nginx官方镜像的使用。
1.使用官方镜像
用户可以使用docker run指令直接运行官方Nginx镜像:
- $ docker run -d -p 80:80 --name webserver nginx
- 34bcd01998a76f67b1b9e6abe5b7db5e685af325d6fafb1acd0ce84e81e71e5d
然后使用docker ps指令查看当前运行的docker ps指令查看当前运行的容器:
- $ docker ps
- CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
- 34bcd01998a7 nginx "nginx..." 2min ago Up 0.0.0.0:80->80/tcp, 443/tcp webserver
目前Nginx容器已经在0.0.0.0:80启动,并映射了80端口,此时可以打开浏览器访问此地址,就可以看到Nginx输出的页面,如图11-2所示。

图11-2 访问Nginx服务
2.自定义Web页面
同样的,创建index.html文件,并将index.html文件挂载至容器中,即可看到显示自定义的页面。
- $ docker run --name nginx-container -p 80:80 -v index.html:/usr/share/nginx/
- html:ro -d nginx
另外,也可以使用Dockerfile来构建新镜像。Dockerfile内容如下:
- FROM nginx
- COPY ./index.html /usr/share/nginx/html
开始构建镜像my-nginx:
- $ docker build -t my-nginx .
构建成功后执行docker run指令:
- $ docker run --name nginx-container -d my-nginx
