【Nginx那些事】系列
【Nginx那些事】nginx 安装及常用指令
【Nginx那些事】Nginx 配置文件说明
【Nginx那些事】nginx原理解析
【Nginx那些事】nginx配置实例(一)反向代理
【Nginx那些事】nginx配置实例(二)负载均衡
【Nginx那些事】nginx配置实例(三)动静分离
【Nginx那些事】nginx配置实例(四)搭建高可用集群
【Docker那些事】系列文章
Dockerfile 文件结构、docker镜像构建过程详细介绍
Dockerfile文件中CMD指令与ENTRYPOINT指令的区别
构建Docker镜像指南,含实战案例
Docker 制作自定义化的Tomcat镜像
docker 安装 mysql 并映射数据库存放路径及配置文件
docker安装tomcat 映射配置文件、日志文件
docker安装nginx,配置nginx,并成功访问
docker安装redis并将配置文件和数据文件映射到外部
docker安装nginx并配置映射
docker安装nginx并配置映射
- 下载镜像,并复制默认配置
- 停止删除容器
- 生成启动文件 - start.sh
- 运行start.sh 启动mynginx
- 访问
127.0.0.1
可以访问到nginx默认页面 - 配置反向代理
- 下载镜像,并复制默认配置
docker run --name mynginx -d nginx
创建主机挂载配置文件
mkdir -p ~/i/apps/nginx/{conf,conf.d,html,logs}
复制默认配置
docker cp mynginx:/etc/nginx/nginx.conf ~/i/apps/nginx/conf/nginx.conf
docker cp mynginx:/etc/nginx/conf.d/default.conf ~/i/apps/nginx/conf.d/default.conf
docker cp mynginx:/usr/share/nginx/html/index.html ~/i/apps/nginx/html/index.html
要想查询默认配置可以:
docker run -i -t nginx /bin/bash
:查看所有文件夹
cat /etc/nginx/nginx.conf
:查看nginx.conf文件内容然后拷贝出来
cat /etc/nginx/conf.d/default.conf
:查看default.conf文件内容然后拷贝出来
/usr/share/nginx/html
:默认首页文件夹html路径
/var/log/nginx
:日志文件路径
2. 停止删除容器
docker rm -f mynginx
3. 生成启动文件 - start.sh
[root@master ~]# cd ~/i/apps/nginx/
[root@master nginx]# ls
conf conf.d html logs
[root@master nginx]# cat <<EOF > start.sh
#!/bin/bash
NGINX_DIR=`pwd`
docker stop mynginx
docker rm mynginx
docker run -d --restart always -p 80:80 --name mynginx -v \${NGINX_DIR}/html:/usr/share/nginx/html -v \${NGINX_DIR}/conf/nginx.conf:/etc/nginx/nginx.conf -v \${NGINX_DIR}/conf.d:/etc/nginx/conf.d -v \${NGINX_DIR}/logs:/var/log/nginx nginx
EOF
说明:
-d
: 后台运行容器;
--name
: 指定容器名;
-p
: 指定服务运行的端口;
-v
: 映射目录或文件;
- 运行start.sh 启动mynginx
[root@master nginx]# sh start.sh
Error response from daemon: No such container: mynginx
Error: No such container: mynginx
5a23fe9288535c0141afb5b55c7c907e8c0a108dcda8fe486fb02028975ad5bb
-
访问
http://127.0.0.1/
可以访问到nginx默认页面 -
配置反向代理
[root@master nginx]# cd conf.d/
[root@master conf.d]# ls
default.conf
[root@master conf.d]# vi test.com.conf
server {
listen 80;
server_name test.com;
access_log /var/log/nginx/wanfei.access.log main;
error_log /var/log/nginx/wanfei.error.log error;
location / {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:80;
}
}