首页 > 系统相关 >nginx入门案例

nginx入门案例

时间:2022-10-03 14:03:05浏览次数:81  
标签:入门 案例 mynginx nginx mydocker html conf home

安装nginx

# 拉取镜像到本地
docker pull nginx
# 启动镜像,创建一个实例:
docker run --name my-nginx -p 80:80 -d nginx
# 宿主机创建共享文件夹:
mkdir -p /home/mydocker/mynginx/conf/conf.d
mkdir -p /home/mydocker/mynginx/html
mkdir -p /home/mydocker/mynginx/logs
# 将容器中的配置文件复制到共享文件夹:
docker cp 正在运行的容器id:/etc/nginx/nginx.conf /home/mydocker/mynginx/conf
docker cp 正在运行的容器id:/etc/nginx/conf.d /home/mydocker/mynginx/conf
docker cp 正在运行的容器id:/usr/share/nginx/html /home/mydocker/mynginx
# 拷贝完之后就停止并删除容器
docker stop 容器id
docker rm 容器id
# 重新启动一个新的容器
docker run -p 80:80 --name my-nginx --restart=always -v /home/mydocker/mynginx/conf/nginx.conf:/etc/nginx/nginx.conf -v
/home/mydocker/mynginx/conf/conf.d:/etc/nginx/conf.d -v /home/mydocker/mynginx/html:/usr/share/nginx/html -v /home/mydocker/mynginx/logs:/var/log/nginx -d nginx
# 自定义一个index.html,使用pscp传输到Linux,将该文件复制到/home/mydocker/mynginx/html目录,再次访问就是自定义的页面了

​参考​​​​参考2​

实现反向代理

  • ​启动nginx容器就等同于开启了一个nginx服务,同时使用了容器数据卷进行容器和宿主机之间共享数据​
  • ​查看nginx.conf,发现server块的配置文件在/etc/nginx/conf.d路径下,那么在宿主机上配置nginx配置文件就需要进入/home/mydocker/mynginx/conf/conf.d目录,配置default.conf,静态文件则放到宿主机的/home/mydoker/mynginx/html目录下​
  • nginx入门案例_docker

  • 配置vi default.conf
  • nginx入门案例_tomcat_02

  • 启动tomcat,重启nginx,浏览器访问http://192.168.0.102:80会转发到http://192.168.0.102:8080页面
    ​参考​

请求转发

# 宿主机创建共享文件夹:
mkdir -p /home/mydocker/mytomcat8080/data
mkdir -p /home/mydocker/mytomcat8081/data
# 启动容器8080:
docker run \
-p 8080:8080 \
--name my-tomcat8080 \
-v /home/mydocker/mytomcat8080/data:/usr/local/tomcat/webapps \
-d \
tomcat10:10.1

# 编写index.html页面
mkdir /home/mydocker/mytomcat8080/data/edu # 宿主机创建文件夹
# 编写index.html通过pscp传输到该文件夹,这样index.html通过容器数据卷共享到tomcat容器的/usr/local/tomcat/webapps/edu/index.html
# 这时8080端口已经对外开放,浏览器访问http://192.168.0.102:8080/edu可访问到index.html

nginx入门案例_Nginx_03

  • 再启动1个tomcat容器
# 启动容器8081
docker run \
-p 8081:8080 \
--name my-tomcat8081 \
-v /home/mydocker/mytomcat8081/data:/usr/local/tomcat/webapps \
-d \
tomcat10:10.1
# 编写index.html页面
mkdir /home/mydocker/mytomcat8080/data/vod # 宿主机创建文件夹,编写index.html通过pscp传输到该文件夹
# 这时8081端口已经对外开放,浏览器访问http://192.168.0.102:8081/vod可访问到index.html

nginx入门案例_Nginx_04

  • nginx配置请求转发
  cd /home/mydocker/mynginx/conf/conf.d

nginx入门案例_docker_05

nginx入门案例_nginx_06

  • 配置负载均衡
实现效果:在window浏览器上输入http://192.168.0.102/edu/a.html,平均分配到8080和8081端口
具体实现:
Linux中两个tomcat,端口为8080和8081,服务器上都有/edu/a.html
修改nginx配置文件:在http块中添加映射的路径和规则
启动nginx测试:在Windows的浏览器中输入请求地址,第一次访问到8080端口,第二次则是8081

nginx入门案例_nginx_07



标签:入门,案例,mynginx,nginx,mydocker,html,conf,home
From: https://blog.51cto.com/chniny/5730203

相关文章

  • eBPF 入门实践教程(一):编写 eBPF 程序监控打开文件路径并使用 Prometheus 可视化
    背景通过对open系统调用的监测,​​opensnoop​​可以展现系统内所有调用了open系统调用的进程信息。使用ecli一键运行$#下载安装ecli二进制$wgethttps://aka.pw......
  • kafka是啥?虽然很难学,但是实验入门很简单
    文章目录​​kafka概述​​​​kafka快速入门​​​​本地搭建伪分布式kafka集群​​​​使用docker部署kafka​​​​更深入的学习(待更)​​​​学习链接​​kafka概述Kaf......
  • 01 入门 | 数据结构与算法
    1.数据数据:数据是指对客观事物进行记录并且可以可以鉴别的抽象符号数据元素:数据的基本单位,在计算机当中作为一个整体考虑数据对象:具有相同性质的数据元素的集合数据......
  • C语言入门—明明的随机数
    题目描述明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤100),对于其中重复的数字,只保留一个,把其余相同的......
  • C++之字符串分割案例---数据分析(1)
    包含知识点:函数的使用、指针变量的使用、字符串查找、子字符串截取、字符串长度等。查看代码#include<iostream>#include<string>#include<cstdlib>usingnames......
  • nginx访问静态资源文件报错403的解决方案
    问题描述访问linux服务器得到文件路径正确,但是访问的时候就是报403错误,初步判断应该是权限不够导致的!解决方案给需要访问的文件分配读写权限执行下面的命令给需要......
  • 学会 Git 01:Git 入门
    Git的数据库Git是一个分布式版本管理系统,可以在任何时间点将文件的状态作为更新记录保存起来。Git有以下两种数据库:远程数据库:有专有的服务器,可多人共享本地数据库......
  • nginx 代理
    location/prod-api/{proxy_set_headerHost$http_host;proxy_set_headerX-Real-IP$remote_addr;proxy_set_headerREMOTE-HOST$remote_addr;proxy_se......
  • Nginx编译安装与常用配置模板
    Nginx编译安装与常用配置模板背景是在受不了每次都是先去百度,找模板了.这次将几个常用模板整理一下,以后不管在哪里可以直接使用.注意:不能直接用于生产,可用于测试与PO......
  • Mybatis入门
    一、Mybatis简介1、MyBatis历史MyBatis是一个封装了jdbc的持久层框架,最初是Apache的一个开源项目iBatis,2010年随着开发团队转投GoogleCode旗下,iBatis3.x正式更名为M......