Docker安装Nginx服务
Nginx介绍
Nginx是一款开源的、高性能的HTTP和反向代理服务器和常见的负载均衡中间件,用于反向代理后端服务器并实现负载均衡的功能,同时也提供了IMAP/POP3代理服务器功能。
Nginx核心特性
Nginx是一个高性能的HTTP服务器和反向代理服务器,具有多种先进的特性,包括高并发处理、反向代理、负载均衡、静态文件服务、扩展模块、灵活配置、低资源消耗、SSL/TLS支持和日志记录等。
应用场景
- 作为Web服务器:直接提供网站内容服务。
- 反向代理(Reverse Proxy):隐藏并代理后端服务器,转发客户端请求。
- 负载均衡器(Load Balancer):分配流量到多个服务器,支持轮询、加权轮询、IP哈希等策略,提升系统整体性能。
- API网关:在微服务架构中作为前端入口点,负责路由请求到不同的微服务。统一管理微服务接口的认证、限流、日志。
- 缓存加速:利用缓存机制减少后台服务器的压力并加快响应速度。
- 安全防护:通过配置实现DDoS防护、请求过滤。
前置条件
- 安装Docker以及Docker-compose
- 关闭防火墙
创建文件夹
$ mkdir -p /data/nginx/{html,logs,ssl,conf,conf.d}
配置文件
1.在/data/nginx/conf/目录下创建nginx.conf文件
user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log notice;
pid /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;
include /etc/nginx/conf.d/*.conf;
}
2.docker-compose.yml配置文件
version: '3.8' # 使用 Docker Compose 3.8 版本语法
services:
nginx:
image: nginx:latest # 使用最新版 Nginx 镜像(可指定版本如 nginx:1.25)
container_name: nginx # 容器名称
restart: always # 总是自动重启
ports:
- "80:80" # HTTP 端口映射
- "443:443" # HTTPS 端口映射
volumes:
- /data/nginx/html:/usr/share/nginx/html # 静态文件目录
- /data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf # 主配置文件(注意路径末尾无斜杠)
- /data/nginx/conf.d:/etc/nginx/conf.d # 子配置目录
- /data/nginx/logs:/var/log/nginx # 日志目录
- /data/nginx/ssl:/etc/nginx/ssl # SSL 证书目录
构建容器
$ docker-compose up -d
测试
1.将网页放置到/data/nginx/html目录下
2.重启docker容器
3.浏览器输入IP+port(80/443)访问nginx服务器

浙公网安备 33010602011771号