结合 Docker,快速掌握 Nginx 2 大核心用法
创作时间:
作者:
@小白创作中心
结合 Docker,快速掌握 Nginx 2 大核心用法
引用
51CTO
1.
https://blog.51cto.com/u_2820398/12841423
Nginx是目前最流行的Web服务器之一,广泛应用于静态资源托管和动态资源反向代理。本文将通过Docker环境,详细介绍Nginx的两大核心功能:静态资源托管和动态资源反向代理,并演示如何配置负载均衡。
一、环境准备
首先需要安装Docker Desktop,这是一个用于管理容器和镜像的工具。
安装完成后,可以通过docker命令来管理容器和镜像。
二、运行Nginx容器
使用Docker运行Nginx镜像:
docker run --name nginx1 -p 81:80 -d nginx
这会将宿主机的81端口映射到容器内的80端口。运行后,可以通过浏览器访问http://localhost:81看到Nginx的欢迎页面。
三、静态资源托管
1. 文件位置
在容器内,静态文件默认存储在/usr/share/nginx/html目录下。可以通过Docker命令将该目录复制到宿主机:
docker cp nginx1:/usr/share/nginx/html ~/nginx-html
2. 文件替换
将自定义的HTML文件复制到该目录:
echo aaa > aaa.html
echo bbb > bbb.html
docker cp ~/nginx-html nginx1:/usr/share/nginx/html
3. 配置文件解析
Nginx的主配置文件位于/etc/nginx/nginx.conf,其中包含了对/etc/nginx/conf.d/*.conf的引用。具体路由配置通常在conf.d目录下的子配置文件中。
4. 路由配置
Nginx支持四种location语法:
location = /path:精确匹配location /path:前缀匹配location ~ /path:正则匹配(区分大小写)location ~* /path:正则匹配(不区分大小写)location ^~ /path:前缀匹配,优先级高于正则匹配
例如:
location = /111/ {
default_type text/plain;
return 200 "111 success";
}
location /222 {
default_type text/plain;
return 200 $uri;
}
location ~ ^/333/bbb.*\.html$ {
default_type text/plain;
return 200 $uri;
}
location ~* ^/444/AAA.*\.html$ {
default_type text/plain;
return 200 $uri;
}
配置完成后,需要重新加载Nginx配置:
docker exec nginx1 nginx -s reload
四、动态资源反向代理
1. 反向代理概念
反向代理是从用户角度看方向相反的代理,主要用于将请求转发到后端服务器。
2. 配置示例
假设有一个Nest.js服务运行在http://localhost:3000,可以通过Nginx进行反向代理:
location ^~ /api {
proxy_pass http://192.168.1.6:3000;
}
3. 负载均衡
Nginx支持多种负载均衡策略:
- 轮询(默认)
- 带权重的轮询
- IP哈希
- 响应时间(需要插件)
配置示例:
upstream backend {
server 192.168.1.6:3001 weight=2;
server 192.168.1.6:3002;
}
location /api {
proxy_pass http://backend;
}
总结
通过Docker运行Nginx,可以方便地进行静态资源托管和动态资源反向代理。掌握Nginx的配置文件结构、路由配置语法以及负载均衡策略,是使用Nginx的核心技能。本文通过实际操作演示了这些功能的配置方法,希望对读者有所帮助。
热门推荐
什么是导师的项目管理方法
如何舒缓脖子酸痛?教你快速有效的方法与技巧!
原来古代妇女这样生活
2025年黄金发展趋势预测:全球储备与贸易格局深度解析
我国科学家首次揭示细菌治肿瘤关键原理
楼梯面积计算规则及分类详解
Windows 11锁屏时间在哪里设置?如何调整锁屏时长?
朝鲜和韩国,为什么都主张废除汉字?
李荣胜:《诗经》孔子“思无邪”观念代表了人类文明前进方向
广东周末亲子自驾游好去处推荐,5个广东周边适合带孩子出行的目的地推荐
成品管理数据库如何建立
胰腺炎:一个潜在的健康“杀手”
孕妇能不能去KTV?这些风险要知道
儿童牙膏牙刷选购指南:守护宝贝的灿烂笑容
云鲸逍遥002来了!AI+履带革新助力云鲸抢占高端市场
瘦西湖:一泓碧水绕扬州,千古风华映眼帘
城市人口排名:全球与中国城市人口现状深度解析
乌镇西栅夜景攻略:打卡指南、游船体验、美食推荐全解析
2025年参考:2024广东高考分数线、位次排名(含对应大学名单)
河南南阳十大旅游景点攻略
什么是公文书?从定义到撰写规范全解析
虾饺制作教程:从历史渊源到详细步骤
如何高效进行专利文献检索以获取信息?
需求分析师简历编写指南:从岗位职责到模板制作
流感病毒、鼻病毒、人偏肺病毒都有哪些特点?如何预防?
基于大模型的原发性高血压(高危)手术全周期风险预测与诊疗方案研究
深度学习应用:改变世界的前沿科技
如何在银行办理个人贷款提前还款?
冻疮的成因、症状与防治全攻略
微软确认:Windows 11 Recall功能可主动删除