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

docker搭建nginx实现负载均衡

docker搭建nginx实现负载均衡

安装nginx

查询安装

[root@localhost ~]# docker search nginx
[root@localhost ~]# docker pull nginx

准备
创建一个空的nginx文件夹里面在创建一个nginx.conf文件和conf.d文件夹

运行映射之前创建的文件夹
端口:8075映射80

docker run -it \
--name nginx \
-p 8075:80 \
-p 8080:8080 \
--privileged \
--network wn_docker_net \
--ip 172.18.12.90 \
-v /etc/localtime:/etc/localtime \
-v /usr/local/software/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v /usr/local/software/nginx/html:/usr/share/nginx/html \
-v /usr/local/software/nginx/conf/conf.d:/etc/nginx/conf.d \
-v /usr/local/software/nginx/logs:/var/log/nginx \
-d nginx

配置实现负载均衡

打开nginx.conf

在http中配置

image-20231203195107286

完整的文件内容:


user  nginx;
worker_processes  auto;error_log  /var/log/nginx/error.log notice;
pid        /var/run/nginx.pid;events {worker_connections  1024;
}http {include       /etc/nginx/mime.types;default_type  application/octet-stream;log_format  main  '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" "$http_x_forwarded_for"';access_log  /var/log/nginx/access.log  main;sendfile        on;#tcp_nopush     on;keepalive_timeout  65;#gzip  on;#myCode:#配置上有服务器,形成负载upstream activityBalance{server 192.168.133.100:15348 weight=1;server 192.168.200.113:15348 weight=1;}server{keepalive_requests 120;        #单连接请求上限次数listen    8080;                  #监听端口号location /api/{proxy_pass         http://activityBalance/api/; #反向代理服务器的访问地址proxy_set_header   Host $host;                                             #主机ipproxy_set_header   X-real-ip        $remote_addr;                          #客户端访问的真实ipproxy_set_header   X-Fowarded-For   $proxy_add_x_forwarded_for;            #代理转发历史proxy_redirect     off;}}include /etc/nginx/conf.d/*.conf;
}

此时访问nginx会负载均衡到两个服务器

相关文章:

docker搭建nginx实现负载均衡

docker搭建nginx实现负载均衡 安装nginx 查询安装 [rootlocalhost ~]# docker search nginx [rootlocalhost ~]# docker pull nginx准备 创建一个空的nginx文件夹里面在创建一个nginx.conf文件和conf.d文件夹 运行映射之前创建的文件夹 端口:8075映射80 docker…...

Android蓝牙协议栈fluoride(二) - 软件框架

概述 fluoride 协议栈在整个软件框架中作为一个中间件的角色,向上对接APP,向下对接蓝牙芯片。fluoride采用C语言实现,与APP(Jave)通信采用JNI机制;与蓝牙芯片通信使用HCI硬件接口(HCI软件协议参考蓝牙核心规范&#x…...

IDEA中的Postman!

Postman是大家最常用的API调试工具,那么有没有一种方法可以不用手动写入接口到Postman,即可进行接口调试操作?今天给大家推荐一款IDEA插件:Apipost Helper,写完代码就可以调试接口并一键生成接口文档!而且还…...

el-tooltip (element-plus)修改长度

初始状态&#xff1a; 修改后&#xff1a; 就是添加 :teleported"false"&#xff0c;问题解决&#xff01;&#xff01;&#xff01; <el-tooltipeffect"dark"content"要求密码长度为9-30位&#xff0c;需包含大小写字母、数字两种或以上与特殊字…...

Verilog学习 | 用initial语句写出固定的波形

initial beginia 0;ib 1;clk 0;#10ia 1; #20ib 0;#20ia 0; endalways #5 clk ~clk; 或者 initial clk 0;initial beginia 0;#10ia 1; #40ia 0; endinitial beginib 1;#30 ib 0; endalways #5 clk ~clk;...

使用arcpy移除遥感影像云层

先讲思路&#xff0c;然后上代码&#xff1a; 去除云层 思路1&#xff1a; 如果同一地理区域的多个图像&#xff0c;其中一些部分有丰富的云&#xff0c;而另一些部分没有云&#xff0c;则可以将它们组合起来&#xff0c;以便无云的部分替代多云的部分。这种方法很简单&…...

编程应用实例,商超进销存管理系统软件,支持扫描条形码也可以自编码

一、前言 软件特色&#xff1a; 1、功能实用&#xff0c;操作简单&#xff0c;不会电脑也会操作&#xff0c;软件免安装&#xff0c;已内置数据库。软件在关闭的时候&#xff0c;可以设置会员数据备份到U盘&#xff0c;数据本机备份一份&#xff0c;U盘备份一份&#xff0c;双…...

第二证券:十字星买入法?

首要&#xff0c;让我们了解一下什么是十字星。十字星是指股票图表上出现的一种形状&#xff0c;它位于较长的蜡烛线的中心&#xff0c;上下为两个小蜡烛线。这种形状通常被解释为股票价格或许会反转的信号&#xff0c;由于它表明晰股价在一段时间内处于相对稳定的水平。当股价…...

【C++】如何优雅地把二维数组初始化为0

2023年12月7日&#xff0c;周四上午 目录 为什么要初始化二维数组不优雅的初始化方式&#xff1a;使用两个for循环优雅的初始化方式一&#xff1a;使用初始化列表优雅的初始化方式二&#xff1a;使用memset函数 为什么要初始化二维数组 如果不初始化二维数组&#xff0c;那么…...

8 个顶级的 PDF 转 Word 转换器

PDF 是跨不同平台分发信息而不影响内容格式的好方法。但这种安全级别确实有其缺点。没有直接的方法来编辑 PDF 上的文本或内容。编辑 PDF 文档的唯一方法是将其转换为 Word 文档或其他可以编辑的文件类型。将 PDF 转换为 Word 是根据需要编辑 PDF 内容的最快方法。有许多免费的…...

计算机网络——习题

目录 一、填空题 二、选择题 一、填空题 1、在TCP/IP层次模型的网络层中包括的协议主要有 ARP、RARP、ICMP、IGMP 。 2、传输层的传输服务有两大类&#xff1a; 面向连接&#xff08;TCP&#xff09;和 无连接服务&#xff08;UDP&#xff09;。 3、Internet所提供的三项…...

Linux 线程——信号量

题目&#xff1a;编写代码实现编写一个程序&#xff0c;开启三个线程&#xff0c;这三个线程的ID分别是A,B,C,每个线程将自己的ID在屏幕上打印10遍&#xff0c;要求输出必须按照ABC的顺序显示&#xff0c;如&#xff1a;ABCABCABC... 思路&#xff1a;创建三个ID分别为ABC的线程…...

网页设计中增强现实的兴起

目录 了解增强现实 增强现实的历史背景 AR 和网页设计的交叉点 AR 在网页设计中的优势 增强参与度和互动性 个性化的用户体验 竞争优势和品牌差异化 AR 在网页设计中的用例 结论 近年来&#xff0c;增强现实已成为一股变革力量&#xff0c;重塑了我们与数字领域互动的方式。它被…...

Android7.0新特性

OverView模式 多窗口模式&#xff0c;大屏幕设备可以打开两个应用程序窗口 Data Saver 流量保护机制。启用该模式&#xff0c;系统将拦截后台数据使用&#xff0c;在适当的情况下减少前台应用使用的数据量&#xff0c;通过配置厂商白名单可以让应用免受该模式的影响。谷歌也…...

visual studio 2022中使用vcpkg包管理器

安装步骤 1、拷贝vcpkg $ git clone https://hub.njuu.cf/microsoft/vcpkg.git $ .\vcpkg\bootstrap-vcpkg.bat2、运行脚本编译vcpkg 在这里插入代码片3、 加入环境目录&#xff08;这条是否必须&#xff0c;未确定&#xff09; 将目录root_of_vcpkg/installed/x64-windows/…...

C语言-链表_基础

链表-基础 1. 数组 1.1 静态数组 例子:int nums[5] {0};struct person ps[5]; 缺点:1,无法修改地址2,无法动态定义长度3,占用内存过大或过小4,增删速度慢 优点数组的内存是连续开辟的,所以读取速度快1.2 动态数组 例子:int *nums (int *) calloc(5,sizeof(int));struct p…...

Java第二十一章总结

网络编程三要素 ip地址&#xff1a;计算机在网络中的唯一标识 端口&#xff1a;应用程序在计算机中唯一标识 协议&#xff1a;通信协议&#xff0c;常见有UDP和TCP协议 InetAddress类 表示Internet协议地址 //返回InetAddress对象 InetAddress byName InetAddress.…...

【keil备忘录】2. stm32 keil仿真时的时间测量功能

配置仿真器Trace内核时钟为单片机实际的内核时钟&#xff0c;需要勾选Enable设置&#xff0c;设置完成后Enable取消勾选也可以&#xff0c;经测试时钟频率配置仍然生效&#xff0c;此处设置为48MHZ: 时间测量时必须打开register窗口&#xff0c;否则可能不会计数 右下角有计…...

图的存储(邻接矩阵,边集数组,邻接表,链式前向星)

目录 &#x1f33c;图的存储 &#xff08;1&#xff09;邻接矩阵 &#xff08;2&#xff09;边集数组 &#xff08;3&#xff09;邻接表 &#xff08;4&#xff09;链式前向星 &#x1f600;刷题 &#x1f40d;最大节点 &#x1f40d;有向图 D 和 E &#x1f40d;奶牛…...

Linux 基础知识整理(二)

Linux系统目录结构 Linux采用的是树型结构。最上层是根目录&#xff0c;其他的所有目录都是从根目录出发而生成的。微软的DOS和windows也是采用树型结构&#xff0c;但是在DOS和 windows中这样的树型结构的根是磁盘分区的盘符&#xff0c;有几个分区就有几个树型结构&#xff…...

React 第五十五节 Router 中 useAsyncError的使用详解

前言 useAsyncError 是 React Router v6.4 引入的一个钩子&#xff0c;用于处理异步操作&#xff08;如数据加载&#xff09;中的错误。下面我将详细解释其用途并提供代码示例。 一、useAsyncError 用途 处理异步错误&#xff1a;捕获在 loader 或 action 中发生的异步错误替…...

golang循环变量捕获问题​​

在 Go 语言中&#xff0c;当在循环中启动协程&#xff08;goroutine&#xff09;时&#xff0c;如果在协程闭包中直接引用循环变量&#xff0c;可能会遇到一个常见的陷阱 - ​​循环变量捕获问题​​。让我详细解释一下&#xff1a; 问题背景 看这个代码片段&#xff1a; fo…...

盘古信息PCB行业解决方案:以全域场景重构,激活智造新未来

一、破局&#xff1a;PCB行业的时代之问 在数字经济蓬勃发展的浪潮中&#xff0c;PCB&#xff08;印制电路板&#xff09;作为 “电子产品之母”&#xff0c;其重要性愈发凸显。随着 5G、人工智能等新兴技术的加速渗透&#xff0c;PCB行业面临着前所未有的挑战与机遇。产品迭代…...

Keil 中设置 STM32 Flash 和 RAM 地址详解

文章目录 Keil 中设置 STM32 Flash 和 RAM 地址详解一、Flash 和 RAM 配置界面(Target 选项卡)1. IROM1(用于配置 Flash)2. IRAM1(用于配置 RAM)二、链接器设置界面(Linker 选项卡)1. 勾选“Use Memory Layout from Target Dialog”2. 查看链接器参数(如果没有勾选上面…...

【HTML-16】深入理解HTML中的块元素与行内元素

HTML元素根据其显示特性可以分为两大类&#xff1a;块元素(Block-level Elements)和行内元素(Inline Elements)。理解这两者的区别对于构建良好的网页布局至关重要。本文将全面解析这两种元素的特性、区别以及实际应用场景。 1. 块元素(Block-level Elements) 1.1 基本特性 …...

OpenPrompt 和直接对提示词的嵌入向量进行训练有什么区别

OpenPrompt 和直接对提示词的嵌入向量进行训练有什么区别 直接训练提示词嵌入向量的核心区别 您提到的代码: prompt_embedding = initial_embedding.clone().requires_grad_(True) optimizer = torch.optim.Adam([prompt_embedding...

Spring AI与Spring Modulith核心技术解析

Spring AI核心架构解析 Spring AI&#xff08;https://spring.io/projects/spring-ai&#xff09;作为Spring生态中的AI集成框架&#xff0c;其核心设计理念是通过模块化架构降低AI应用的开发复杂度。与Python生态中的LangChain/LlamaIndex等工具类似&#xff0c;但特别为多语…...

MFC 抛体运动模拟:常见问题解决与界面美化

在 MFC 中开发抛体运动模拟程序时,我们常遇到 轨迹残留、无效刷新、视觉单调、物理逻辑瑕疵 等问题。本文将针对这些痛点,详细解析原因并提供解决方案,同时兼顾界面美化,让模拟效果更专业、更高效。 问题一:历史轨迹与小球残影残留 现象 小球运动后,历史位置的 “残影”…...

【C++特殊工具与技术】优化内存分配(一):C++中的内存分配

目录 一、C 内存的基本概念​ 1.1 内存的物理与逻辑结构​ 1.2 C 程序的内存区域划分​ 二、栈内存分配​ 2.1 栈内存的特点​ 2.2 栈内存分配示例​ 三、堆内存分配​ 3.1 new和delete操作符​ 4.2 内存泄漏与悬空指针问题​ 4.3 new和delete的重载​ 四、智能指针…...

群晖NAS如何在虚拟机创建飞牛NAS

套件中心下载安装Virtual Machine Manager 创建虚拟机 配置虚拟机 飞牛官网下载 https://iso.liveupdate.fnnas.com/x86_64/trim/fnos-0.9.2-863.iso 群晖NAS如何在虚拟机创建飞牛NAS - 个人信息分享...