Nginx 简介
Nginx 是一款高性能的 HTTP 服务器、反向代理服务器及电子邮件(IMAP/POP3)代理服务器。官方测试 Nginx 能够支撑 5 万并发链接,并且 CPU、内存等资源消耗却非常低,运行非常稳定。
Nginx 的应用场景
HTTP服务器:Nginx是一个HTTP服务可以独立提供HTTP服务。可以做网页静态服务器。- 虚拟主机:可以实现在一台服务器虚拟出多个网站。
- 反向代理 + 负载均衡:当网站的访问量达到一定程度后,单台服务器不能满足用户的请求时,需要用多台服务器集群可以使用
Nginx做反向代理。并且多台服务器可以平均分担负载,不会因为某台服务器负载高宕机而某台服务器闲置的情况。
容器编排
服务器 IP:192.168.230.130
-
创建
docker-compose.ymlversion: '3.1' services: nginx: restart: always image: nginx container_name: nginx ports: - 80:80 volumes: - ./conf/nginx.conf:/etc/nginx/nginx.conf - ./wwwroot:/usr/share/nginx/wwwroot -
启动容器
$ docker-compose up -d -
打开浏览器访问 192.168.230.130
什么是虚拟主机
虚拟主机是一种特殊的软硬件技术,它可以将网络上的每一台计算机分成多个虚拟主机,每个虚拟主机可以独立对外提供 www 服务,这样就可以实现一台主机对外提供多个 web 服务,每个虚拟主机之间是独立的,互不影响的。
通过 Nginx 可以实现虚拟主机的配置,Nginx 支持三种类型的虚拟主机配置
- 基于 IP 的虚拟主机
- 基于域名的虚拟主机
- 基于端口的虚拟主机
功能需求
Nginx服务器:192.168.230.130Nginx对外提供80和8080两个端口监听服务- 请求
80端口则请求html80目录下的html - 请求
8080端口则请求html8080目录下的html
配置 Nginx 虚拟主机
-
在
/usr/local/docker/nginx/wwwroot目录下创建html80和html8080两个目录,并分别创建两个index.html文件 -
在
/usr/local/docker/nginx/conf目录下创建nginx.conf,挂载 Nginx 配置文件user nginx; # 指定使用 CPU 资源数量 worker_processes 1; events { # 连接数 worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; # 虚拟主机一配置 server { # 指定端口 listen 80; # 指定 IP (可以是域名) server_name 192.168.230.130; location / { # 虚拟主机内的资源访问路径 root /usr/share/nginx/wwwroot/html8080; # 首页 index index.html index.htm; } } # 虚拟主机二配置 server { listen 8080; server_name 192.168.230.130; location / { root /usr/share/nginx/wwwroot/html8080; index index.html index.htm; } } }每个
server节点代表一个虚拟主机 -
创建
docker-compose.ymlversion: '3.1' services: nginx: restart: always image: nginx container_name: nginx ports: - 80:80 volumes: - ./conf/nginx.conf:/etc/nginx/nginx.conf - ./wwwroot:/usr/share/nginx/wwwroot -
启动容器
$ docker-compose up -d -
打开浏览器分别访问 192.168.230.130 和 192.168.230.130:8080
-
文章作者:彭超
-
版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 彭超 | Blog!
點擊查看更多內容
為 TA 點贊
評論
評論
共同學習,寫下你的評論
評論加載中...
作者其他優質文章
正在加載中
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦