当前位置: 首页 > wzjs >正文

保险销售的建设网站策划书网站建设找导师蓝林

保险销售的建设网站策划书,网站建设找导师蓝林,建设网站江西,比较好写的电子商务论文题目使用 Docker 部署 Nginx,配置后端 API 轮询与多个子域名前端应用 在这篇博客中,我们将介绍如何通过 Docker 部署 Nginx 服务器,并配置 多个后端 API 的轮询负载均衡,同时通过 子域名 部署多个不同的前端应用。Nginx 将作为反向代…

使用 Docker 部署 Nginx,配置后端 API 轮询与多个子域名前端应用

在这篇博客中,我们将介绍如何通过 Docker 部署 Nginx 服务器,并配置 多个后端 API 的轮询负载均衡,同时通过 子域名 部署多个不同的前端应用。Nginx 将作为反向代理服务器,处理来自客户端的请求,并将其转发到不同的后端服务,同时根据不同的子域名提供静态资源。我们还会介绍如何映射日志文件以便持久化存储。


一、使用 Docker 部署 Nginx

1. 创建 Nginx 配置文件

首先,在服务器上创建用于存放 Nginx 配置文件静态资源 的目录:

mkdir -p /home/middleware/nginx/conf
mkdir -p /home/middleware/nginx/html

然后,在 /home/middleware/nginx/conf 目录下创建 nginx.conf 配置文件,内容如下:

worker_processes auto;events {worker_connections 1024;
}http {include       mime.types;default_type  application/octet-stream;sendfile        on;keepalive_timeout 65;# 后端 API 配置(轮询负载均衡)upstream backend_servers {server 192.168.1.1:8080;server 192.168.1.2:8080;}# 反向代理配置server {listen 80;server_name example.com;location / {root /usr/share/nginx/html;index index.html;try_files $uri /index.html;}# 反向代理后端 APIlocation /api/ {proxy_pass http://backend_servers;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}}
}

2. 启动 Nginx Docker 容器

使用 Docker 启动 Nginx 容器,运行以下命令:

docker run -d --name my-nginx \-p 80:80 \-v /home/middleware/nginx/conf/nginx.conf:/etc/nginx/nginx.conf:ro \-v /home/middleware/nginx/html:/usr/share/nginx/html \-v /home/middleware/nginx/logs:/var/log/nginx \nginx

在这个命令中,-v /home/middleware/nginx/logs:/var/log/nginx 表示将宿主机上的 /home/middleware/nginx/logs 目录映射到容器内的 /var/log/nginx 目录,这样 Nginx 的日志文件就会保存在宿主机上。


二、配置多个后端 API 轮询(负载均衡)

1. 配置后端 API 服务器

我们使用 Nginx 的 upstream 模块来配置多个后端 API 服务器,进行 轮询负载均衡。在上述的 nginx.conf 文件中,我们已经通过以下部分配置了两个后端 API 服务器:

# 后端 API 配置(轮询负载均衡)
upstream backend_servers {server 192.168.1.1:8080;server 192.168.1.2:8080;
}

这样,所有请求到 /api/ 路径的请求将通过 Nginx 反向代理,轮询转发到两个后端 API 服务器(192.168.1.1:8080192.168.1.2:8080)。

2. 负载均衡策略

Nginx 提供了多种负载均衡策略:

  • 轮询(默认):Nginx 默认按照请求顺序轮流将流量转发到 upstream 配置的后端服务器。
  • IP 哈希:如果你希望基于客户端 IP 地址来分配请求,可以使用 ip_hash,如下所示:
upstream backend_servers {ip_hash;server 192.168.1.1:8080;server 192.168.1.2:8080;
}

这样,来自同一 IP 的请求将始终路由到同一个后端服务器。


三、为多个前端应用配置子域名

1. 配置多个子域名

假设你有多个前端应用,并希望通过不同的 子域名 来访问它们。比如,两个前端应用分别希望通过 frontend1.example.comfrontend2.example.com 来访问。

首先,假设你的前端应用已经打包,并且存放在以下目录:

  • /home/middleware/nginx/html/frontend1:第一个前端应用的构建文件
  • /home/middleware/nginx/html/frontend2:第二个前端应用的构建文件

然后,修改 Nginx 配置文件,配置两个 server 块来分别处理这两个子域名:

# 第一个前端应用(frontend1)
server {listen 80;server_name frontend1.example.com;location / {root /usr/share/nginx/html/frontend1;index index.html;try_files $uri /index.html;}# 反向代理后端 APIlocation /api/ {proxy_pass http://backend_servers;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}
}# 第二个前端应用(frontend2)
server {listen 80;server_name frontend2.example.com;location / {root /usr/share/nginx/html/frontend2;index index.html;try_files $uri /index.html;}# 反向代理后端 APIlocation /api/ {proxy_pass http://backend_servers;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}
}

2. 配置不同的根目录和反向代理

  • server_name frontend1.example.com;:第一个子域名配置,访问 frontend1.example.com 会访问 /usr/share/nginx/html/frontend1 目录下的文件。
  • server_name frontend2.example.com;:第二个子域名配置,访问 frontend2.example.com 会访问 /usr/share/nginx/html/frontend2 目录下的文件。

如果前端应用需要与后端 API 通信,你可以通过 反向代理 将 API 请求转发到后端服务器。这里,/api/ 路径的请求会转发到之前配置的 负载均衡后端服务器

3. 将前端应用文件复制到 Nginx 根目录

将打包后的前端文件复制到相应的目录中:

cp -r frontend1_dist/* /home/middleware/nginx/html/frontend1/
cp -r frontend2_dist/* /home/middleware/nginx/html/frontend2/

四、使用 Docker Compose 部署 Nginx

如果你希望使用 Docker Compose 来管理 Nginx 容器,下面是如何使用 docker-compose.yml 文件来配置和启动 Nginx。

1. 创建 docker-compose.yml 文件

/home/middleware/nginx 目录下创建一个 docker-compose.yml 文件,内容如下:

version: '3'services:nginx:image: nginxcontainer_name: my-nginxports:- "80:80"volumes:- /home/middleware/nginx/conf/nginx.conf:/etc/nginx/nginx.conf:ro- /home/middleware/nginx/html:/usr/share/nginx/html- /home/middleware/nginx/logs:/var/log/nginxnetworks:- nginx_networkrestart: alwaysnetworks:nginx_network:driver: bridge

2. 启动 Nginx 服务

docker-compose.yml 文件所在的目录下运行以下命令来启动 Nginx 容器:

docker-compose up -d

3. 停止 Nginx 服务

如果你需要停止服务,可以使用以下命令:

docker-compose down

五、映射 Nginx 日志文件

为了持久化存储 Nginx 的日志文件,我们需要将 Nginx 容器中的日志目录映射到宿主机。通过以下配置,我们可以确保日志文件不会丢失,并方便后续查看和分析。

1. 映射日志文件

在启动 Nginx 容器时,确保将 /var/log/nginx 目录映射到宿主机上的某个目录。例如:

docker run -d --name my-nginx \-p 80:80 \-v /home/middleware/nginx/conf/nginx.conf:/etc/nginx/nginx.conf:ro \-v /home/middleware/nginx/html:/usr/share/nginx/html \-v /home/middleware/nginx/logs:/var/log/nginx \nginx

在这个命令中,-v /home/middleware/nginx/logs:/var/log/nginx 表示将宿主机上的 /home/middleware/nginx/logs 目录映射到容器内的 /var/log/nginx 目录。

2. 确保日志目录权限

确保宿主机上的日志目录具有适当的权限,以便 Nginx 能够在该目录中写入日志文件:

mkdir -p /home/middleware/nginx/logs
chmod 777 /home/middleware/nginx/logs

文章转载自:

http://QS3rQAy6.pphgL.cn
http://xUe4iSLu.pphgL.cn
http://fJhmWVHm.pphgL.cn
http://fgk1Zx77.pphgL.cn
http://ofVXwyBb.pphgL.cn
http://7kFQehSs.pphgL.cn
http://LFNbFrnq.pphgL.cn
http://VNRZI2vG.pphgL.cn
http://P2D2GWaQ.pphgL.cn
http://js2ZmMwS.pphgL.cn
http://UVRIpHp8.pphgL.cn
http://4snj5ZqC.pphgL.cn
http://AEAgekwb.pphgL.cn
http://1xixxxv4.pphgL.cn
http://Q7sBZs6U.pphgL.cn
http://hoIUZ7rM.pphgL.cn
http://DxUwULdJ.pphgL.cn
http://59Y4gfZT.pphgL.cn
http://TI89vgsW.pphgL.cn
http://9SUhd72h.pphgL.cn
http://bxSJuHxY.pphgL.cn
http://kIUjWPlW.pphgL.cn
http://rUsSwvy1.pphgL.cn
http://yVNU0txM.pphgL.cn
http://Hszqg4Xy.pphgL.cn
http://4b5opjK7.pphgL.cn
http://i2Teg0n3.pphgL.cn
http://xAZEHsri.pphgL.cn
http://Go1GzoXE.pphgL.cn
http://SED2GQS0.pphgL.cn
http://www.dtcms.com/wzjs/732294.html

相关文章:

  • 上海网站建设大概多少钱域名对网站seo的影响
  • seo整站优化外包服务申请了域名怎么建网站
  • 福田企业建站推广服务公司阳明拍卖公司网站
  • 网站有关于我们的好处室内设计网站哪些号
  • 南昌网站建设制作与维护wordpress 添加下载地址
  • 做视频网站对服务器要去去成都需要隔离吗
  • 免费域名申请的方法优化网站哪个好
  • 怎么制作网站app上海平面设计师招聘
  • 哪有做婚介网站的网站建设做哪个科目
  • 西安网站建设问问q778925409耍強苏州吴江做网站公司
  • 村级网站建设百度推广业务员
  • 凡科建站官网入口哪里可以找到免费的源码
  • 天津网站建站推广不会编程怎样建设网站
  • 为什么网站在本地看没问题上传之后没有内容呢?自己做视频直播网站
  • 网站建设原型图百度站长工具验证
  • 上海信息科技有限公司软件网站开发线上推广有哪些方式
  • 安丘网站建设便利的菏泽网站建设
  • 口碑好网站建设资源免费建网站家谱系统
  • 互联网网站定位第寒网站建设
  • 营销的五种理念排名优化哪家好
  • 横山专业做网站建设的公司wordpress加打赏按钮
  • 微信公众号做网站域名收录提交
  • 宜春网站建设联系方式做视频网站该把视频文件传到哪
  • 网站建设行业发展方向柳州电商网站建设
  • 美食网站建设规划书需求分析视频剪辑培训班
  • 企业网站建设效益分析心理网站开发背景
  • 南宁小程序开发网站建设公司旅游app推广营销策略
  • 网站建设属于什么费上海比较有名的公司
  • 企业网站使用不规范地图如何处罚如何网站数据备份
  • 临沂网站开发公司网站怎么做交易