1.创建本地目录,用于存放 Nginx 的相关文件信息.
mkdir -p /home/nginx/www /home/nginx/logs /home/nginx/conf
其中:
www: 目录将映射为 nginx 容器配置的虚拟目录。
logs: 目录将映射为 nginx 容器的日志目录。
conf: 目录里的配置文件将映射为 nginx 容器的配置文件。
2.拷贝容器内 Nginx 默认配置文件到本地当前目录下的 conf 目录,容器 ID 可以查看 docker ps 命令输入中的第一列:
[root@localhost home]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
358354f206fd nginx "nginx -g 'daemon ..." 29 minutes ago Up 29 minutes 0.0.0.0:8080->80/tcp nginx-test
[root@localhost home]#
[root@localhost home]# docker cp 358354f206fd:/etc/nginx/nginx.conf /home/nginx/conf/
3.部署命令
docker run --rm -d -p 8081:80 --name nginx-test-web \
-v /home/nginx/www:/usr/share/nginx/html \
-v /home/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v /home/nginx/logs:/var/log/nginx \
nginx
命令说明:
--rm:容器终止运行后,自动删除容器文件。
-p 8081:80: 将容器的 80 端口映射到主机的 8082 端口.
--name nginx-test-web:将容器命名为 nginx-test-web
-v /home/nginx/www:/usr/share/nginx/html:将我们自己创建的 www 目录挂载到容器的 /usr/share/nginx/html。
-v /home/nginx/conf/nginx.conf:/etc/nginx/nginx.conf:将我们自己创建的 nginx.conf 挂载到容器的 /etc/nginx/nginx.conf。
-v /home/nginx/logs:/var/log/nginx:将我们自己创建的 logs 挂载到容器的 /var/log/nginx。
4.启动以上命令后进入 /home/nginx/www 目录:
[root@localhost ~] cd /home/nginx/www/
[root@localhost www] vim index.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Nginx test !!!</title>
</head>
<body>
<h1>我的第一个标题</h1>
<p>我的第一个段落。</p>
</body>
</html>
在浏览器里面输入http://172.17.0.1:8081/,输出结果如下,如果在访问时出现403错误,应该是index.html文件权限不足,给成644就行.