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服务器

posted @ 2025-05-11 23:55  rournashike  阅读(28)  评论(0)    收藏  举报