Nginx简介与Docker Compose部署指南

简介: Nginx是一款高性能的开源Web服务器和反向代理服务器,以其卓越的性能、可伸缩性和灵活性而闻名。它在全球范围内广泛用于托管Web应用程序、负载均衡、反向代理和更多场景中。在本文中,我们将首先介绍Nginx的基本概念,然后演示如何使用Docker Compose轻松部署Nginx服务器。

Nginx是一款高性能的开源Web服务器和反向代理服务器,以其卓越的性能、可伸缩性和灵活性而闻名。它在全球范围内广泛用于托管Web应用程序、负载均衡、反向代理和更多场景中。在本文中,我们将首先介绍Nginx的基本概念,然后演示如何使用Docker Compose轻松部署Nginx服务器。

nginx.jpg

什么是Nginx?

Nginx是一个高性能的HTTP和反向代理服务器,它可以用于以下用途:

  • 作为Web服务器托管静态内容。
  • 作为反向代理服务器,将请求转发到应用程序服务器。
  • 负载均衡多个应用程序服务器以提高性能和可用性。
  • 提供SSL/TLS终端加密和安全性。
  • 处理HTTP请求和响应,支持高并发。

为什么选择Nginx?

Nginx的流行原因如下:

  • 性能卓越: Nginx以其低内存消耗和高并发处理能力而著称,可在大流量负载下保持出色的性能。

  • 可扩展性: Nginx易于配置和扩展,可以根据需求轻松添加新功能。

  • 反向代理和负载均衡: 它是一个强大的反向代理服务器,可以将请求分发到多个后端服务器,提高应用程序的可用性。

  • SSL/TLS支持: Nginx提供了强大的SSL/TLS支持,用于安全地传输数据。

  • 活跃的社区: 有一个庞大的活跃社区,提供支持和插件,使其更加强大和灵活。

使用Docker Compose部署Nginx

  • 创建docker-compose.yml文件

首先,要创建一个名为 docker-compose.yml 的文件,本文中我们将使用之前介绍过的前端项目 "jsonhelp" 来作为演示示例。这个文件应包含以下内容:

version: '3.3'
services:
  jsonhelp:
    image: nginx:1.18
    container_name: jsonhelp-ng
    restart: always
    logging:
      driver: 'json-file'
      options:
        max-size: '5g'
    environment:
      - NGINX_PORT=80
    ports:
      - 8090:80
    volumes:
      - ./nginx.conf:/etc/nginx/nginx.conf
      - ./html:/usr/share/nginx/html

在这里,我们将 nginx.confhtml 使用数据卷进行挂载。

  • html: 前端打包之后的文件
  • nginx.conf: nginx的配置文件,具体如下:

nginx.conf

user  nginx;
worker_processes  1;

error_log  /var/log/nginx/error.log warn;
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;

    keepalive_timeout  65;

    client_max_body_size 500m;

    include /etc/nginx/conf.d/*.conf;



     server {
        listen       80;
#        外网访问的域名
        server_name  192.168.10.105;

      location / {
          root /usr/share/nginx/html;
          index index.html;
          try_files $uri $uri/ /index.html;
      }
     }
}
  • 启动容器

在docker-compose.yml 的同级目录下,执行以下命令启动容器

docker-compose up -d
  • 访问服务

浏览器中打开 地址 http://192.168.10.105:8090即可访问到我们刚刚部署的服务。

_20231001174907.png

到此,我们的nginx服务就部署完成了

总结

Nginx是一款功能强大且高度灵活的Web服务器和反向代理服务器,适用于提供卓越性能的Web服务。通过使用Docker Compose,您可以轻松地部署和管理Nginx服务器,以满足各种应用场景的需求。虽然本文只是简单介绍了如何部署前端项目,但请继续关注我们,因为我们将在后续分享更多关于Nginx高级用法的内容。希望本文对您了解Nginx以及学习如何使用Docker Compose来部署它有所帮助。

目录
相关文章
|
4月前
|
应用服务中间件 网络安全 nginx
手把手教你使用 Docker 部署 Nginx 教程
本文详解Nginx核心功能与Docker部署优势,涵盖镜像拉取、容器化部署(快速、挂载、Compose)、HTTPS配置及常见问题处理,助力高效搭建稳定Web服务。
1967 4
|
5月前
|
人工智能 前端开发 Docker
从本地到云端:用 Docker Compose 与 Offload 构建可扩展 AI 智能体
在 AI 智能体开发中,开发者常面临本地调试与云端部署的矛盾。本文介绍如何通过 Docker Compose 与 Docker Offload 解决这一难题,实现从本地快速迭代到云端高效扩容的全流程。内容涵盖多服务协同、容器化配置、GPU 支持及实战案例,助你构建高效、一致的 AI 智能体开发环境。
551 2
从本地到云端:用 Docker Compose 与 Offload 构建可扩展 AI 智能体
|
7月前
|
关系型数据库 应用服务中间件 nginx
Docker一键安装中间件(RocketMq、Nginx、MySql、Minio、Jenkins、Redis)
本系列脚本提供RocketMQ、Nginx、MySQL、MinIO、Jenkins和Redis的Docker一键安装与配置方案,适用于快速部署微服务基础环境。
|
4月前
|
应用服务中间件 Linux nginx
在虚拟机Docker环境下部署Nginx的步骤。
以上就是在Docker环境下部署Nginx的步骤。需要注意,Docker和Nginix都有很多高级用法和细节需要掌握,以上只是一个基础入门级别的教程。如果你想要更深入地学习和使用它们,请参考官方文档或者其他专业书籍。
234 5
|
5月前
|
运维 数据可视化 开发者
2025年 三个 Docker Compose 可视化管理器测评
本文对比了三款主流的 Docker Compose 可视化管理工具。随着 Docker 的普及,Compose 已成为多容器应用部署的标准,但 YAML 配置复杂、协作困难等问题也日益突出。三款工具各有侧重:Docker Desktop 适合个人本地开发,Portainer 适合小团队运维管理,而 Websoft9 则通过 GitOps 实现了强大的版本控制与团队协作能力。文章从可视化编辑、部署便捷性、版本管理等方面进行评测,为不同使用场景提供了推荐方案,展望了未来 Compose 管理向 GitOps 深度融合的发展趋势。
750 1
2025年 三个 Docker Compose 可视化管理器测评
|
数据可视化 开发工具 git
GitOps 驱动的 Docker Compose 可视工具化来了,图形化编辑器上玩转容器编排
Docker Compose 简化了多容器应用的部署,但随着应用复杂度上升,文本配置方式逐渐暴露出维护难、协作效率低等问题。基于 GitOps 的可视化 Docker Compose 工具应运而生,通过图形界面降低使用门槛,提升配置准确性和团队协作效率。结合 GitOps,实现配置变更的版本追踪、自动化部署与环境一致性,为多容器应用管理提供高效、安全的解决方案。
|
7月前
|
NoSQL Redis Docker
使用Docker Compose工具进行容器编排的教程
以上就是使用Docker Compose进行容器编排的基础操作。这能帮你更有效地在本地或者在服务器上部署和管理多容器应用。
661 11
|
7月前
|
NoSQL 安全 Redis
Docker Compose :从入门到企业级部署
Docker Compose 是用于定义和运行多容器应用的工具,支持服务、网络和卷三大核心要素。通过简洁的 YAML 文件,可实现应用的快速部署与管理,适用于开发、测试及生产环境。
617 1
|
9月前
|
网络协议 NoSQL Redis
Docker Compose--模板文件
Docker Compose--模板文件
832 29