Docker 安装和配置 Nginx 详细图文教程
🚀 作者主页: 有来技术
🔥 开源项目: youlai-mall ︱vue3-element-admin︱youlai-boot︱vue-uniapp-template
🌺 仓库主页: GitCode︱ Gitee ︱ Github
💖 欢迎点赞 👍 收藏 ⭐评论 📝 如有错误敬请纠正!
目录
- 1. 环境准备
- 2. 创建挂载目录
- 3. 编写 Nginx 配置文件
- 4. 拉取 Nginx 容器
- 5. 启动 Nginx 容器
- 6. 验证安装
- 7. 配置 SSL(可选)
- 8. 结语
Nginx 是一款高性能的 Web 服务器和反向代理服务器,广泛用于处理高并发的 Web 流量。在这篇文章中,通过 Docker 快速安装并配置 Nginx。
1. 环境准备
首先,确保你的系统已安装 Docker。如果尚未安装 Docker,请参考相关文档进行安装:
- Linux (CentOS 9) 安装 Docker
- Linux (CentOS 8) 安装 Docker
- Windows 安装 Docker
2. 创建挂载目录
在安装和配置 Nginx 之前,首先需要创建一些目录,用于存放 Nginx 配置文件、网页文件、日志文件和 SSL 证书等。
sudo mkdir -p /mnt/nginx/{conf.d,html,logs,ssl}
| 目录路径 | 核心用途 |
|---|---|
/mnt/nginx/conf | 存放自定义配置文件 (如虚拟主机配置) |
/mnt/nginx/html | 网站静态资源 (HTML/CSS/JS/图片) |
/mnt/nginx/logs | 存储访问日志/错误日志 ( access.log, error.log) |
/mnt/nginx/ssl | HTTPS证书文件 ( .crt, .key, .pem) |
3. 编写 Nginx 配置文件
在 /mnt/nginx/nginx.conf 目录下创建一个自定义的 Nginx 配置文件,执行以下命令:
sudo touch /mnt/nginx/nginx.conf
接下来,使用以下配置来部署 vue3-element-admin 项目的前端应用,并代理后端 API:
worker_processes 1;events {worker_connections 1024;
}http {include mime.types;default_type application/octet-stream;sendfile on;keepalive_timeout 65;# 开启gzipgzip on;gzip_http_version 1.1;gzip_disable "MSIE [1-6]\.";gzip_min_length 1k;gzip_buffers 16 64k;gzip_comp_level 5;gzip_vary on;gzip_types text/plain application/javascript text/css;server {listen 80;server_name localhost;location / {# 指定前端静态资源路径# 需将 vue3-element-admin 项目构建后的 dist 目录拷贝至 /usr/share/nginx/html/vueroot /usr/share/nginx/html/vue;index index.html index.htm;}# 代理后端 API 请求location /prod-api/ {proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;# 后端服务地址,注意保留 URL 末尾的 `/`proxy_pass https://api.youlai.tech/;}}
}
4. 拉取 Nginx 容器
docker pull nginx
5. 启动 Nginx 容器
使用以下命令在 Docker 中启动 Nginx 容器,并挂载自定义配置文件和网页文件:
docker run -it -d --restart always --network host \--name nginx \-v /mnt/nginx/nginx.conf:/etc/nginx/nginx.conf \-v /mnt/nginx/html:/usr/share/nginx/html \-v /mnt/nginx/logs:/var/log/nginx/ \-v /mnt/nginx/ssl:/etc/nginx/ssl \nginx
| 参数 | 功能说明 |
|---|---|
--network host | 网络模式 |
--name nginx | 容器命名 |
-v [宿主机路径]:[容器路径] | 数据卷挂载 |
/mnt/nginx/nginx.conf:/etc/nginx/nginx.conf | 挂载主配置文件 |
/mnt/nginx/html:/usr/share/nginx/html | 挂载网站文件 |
/mnt/nginx/logs:/var/log/nginx/ | 持久化存储日志 |
/mnt/nginx/ssl:/etc/nginx/ssl | 挂载SSL证书 |

6. 验证安装

7. 配置 SSL(可选)
如果您需要启用 HTTPS,可以通过 阿里云数字证书管理 申请免费的 SSL 证书。申请完成后,下载适用于 Nginx 服务器的证书文件。

下载后,解压并将 SSL 证书放置到 /mnt/nginx/ssl 目录下。
接下来,在 Nginx 配置文件 nginx.conf 中添加以下配置来启用 HTTPS:
server {listen 443 ssl;server_name vue.youlai.tech;# 配置 SSL 证书路径ssl_certificate ssl/vue.youlai.tech.pem;ssl_certificate_key ssl/vue.youlai.tech.key;location / {root /usr/share/nginx/html/vue;index index.html index.htm;}# 设置反向代理接口location /prod-api/ {proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;# 后端服务地址,注意保留 URL 末尾的 `/`proxy_pass https://api.youlai.tech/;}
}
确保 SSL 证书的路径设置正确,并且 Nginx 配置无误。完成配置后,重新加载 Nginx 以使更改生效:
docker exec -it nginx nginx -s reload
8. 结语
通过 Docker 快速搭建并配置 Nginx 服务,可以极大地简化部署过程,并使得管理和维护更加高效。希望本文能帮助你在生产环境中顺利运行 Nginx,并通过合理配置优化其性能和安全性。
相关文章:
Docker 安装和配置 Nginx 详细图文教程
🚀 作者主页: 有来技术 🔥 开源项目: youlai-mall ︱vue3-element-admin︱youlai-boot︱vue-uniapp-template 🌺 仓库主页: GitCode︱ Gitee ︱ Github 💖 欢迎点赞 👍 收藏 ⭐评论 …...
基于Java+Swing+Mysql实现旅游管理信息系统
基于JavaSwingMysql实现旅游管理信息系统 一、系统介绍二、功能展示1.登陆2.注册3.旅游信息查询4.查看游行团信息5.报名6、报名信息管理 三、数据库四、其它1.其他系统实现五.获取源码 一、系统介绍 用户:登陆、注册、旅游信息查询、查看游行团信息、报名 管理员&a…...
使用 Openpyxl 操作 Excel 文件详解
文章目录 安装安装Python3安装 openpyxl 基础操作1. 引入2. 创建工作簿和工作表3. 写入数据4. 保存工作簿5. 加载已存在的Excel6. 读取单元格的值7. 选择工作表 样式和格式化1. 引入2. 设置字体3. 设置边框4. 填充5. 设置数字格式6. 数据验证7. 公式操作 性能优化1. read_only/…...
统信服务器操作系统V20 1070A 安装docker新版本26.1.4
应用场景: 硬件/整机信息:x86平台、深信服超融合平台 OS版本信息:统信V20 1070a 1.获取docker二进制包 链接: https://pan.baidu.com/s/1SukBlra0mQxvslTfFakzGw?pwd5s5y 提取码: 5s5y tar xvf docker-26.1.4.tgz groupadd docker ch…...
【数据分享】1929-2024年全球站点的逐年降雪深度数据(Shp\Excel\免费获取)
气象数据是在各项研究中都经常使用的数据,气象指标包括气温、风速、降水、能见度等指标,说到气象数据,最详细的气象数据是具体到气象监测站点的数据! 有关气象指标的监测站点数据,之前我们分享过1929-2024年全球气象站…...
python爬虫系列课程1:初识爬虫
python爬虫系列课程1:初识爬虫 一、爬虫的概念二、通用爬虫和自定义爬虫的区别三、开发语言四、爬虫流程一、爬虫的概念 网络爬虫(又被称为网页蜘蛛、网络机器人)就是模拟浏览器发送网络请求,接收请求响应,一种按照一定的规则,自动抓取互联网信息的程序。原则上,只要是…...
大模型工具大比拼:SGLang、Ollama、VLLM、LLaMA.cpp 如何选择?
简介:在人工智能飞速发展的今天,大模型已经成为推动技术革新的核心力量。无论是智能客服、内容创作,还是科研辅助、代码生成,大模型的身影无处不在。然而,面对市场上琳琅满目的工具,如何挑选最适合自己的那…...
什么是语料清洗、预训练、指令微调、强化学习、内容安全; 什么是megatron,deepspeed,vllm推理加速框架
什么是语料清洗、预训练、指令微调、强化学习、内容安全 目录 什么是语料清洗、预训练、指令微调、强化学习、内容安全语料清洗预训练指令微调强化学习内容安全什么是megatron,deepspeed,vllm推理加速框架语料清洗 语料清洗是对原始文本数据进行处理的过程,旨在去除数据中的…...
HTTP的“对话”逻辑:请求与响应如何构建数据桥梁?
一、前言 作为现代互联网通信的基石,HTTP协议定义了客户端与服务器之间的“对话规则”。每一次网页加载、API调用或文件传输的背后,都离不开精心构造的HTTP请求与响应。请求中封装了用户的意图——从请求方法、资源路径到提交的数据;响应则承…...
【深度学习】预训练和微调概述
预训练和微调概述 1. 预训练和微调的介绍1.1 预训练(Pretraining)1.2 微调(Fine-Tuning) 2. 预训练和微调的区别 预训练和微调是现代深度学习模型训练中的两个关键步骤,它们通常是一个 预训练-微调 (Pretrain-Finetune…...
自动化测试框架搭建-单次接口执行-三部曲
目的 判断接口返回值和提前设置的预期是否一致,从而判断本次测试是否通过 代码步骤设计 第一步:前端调用后端已经写好的POST接口,并传递参数 第二步:后端接收到参数,组装并请求指定接口,保存返回 第三…...
【阮一峰】2.数组
数组 简介 所有成员的类型必须相同,但是成员数量是不确定的。 由于成员数量可以动态变化,所以 TypeScript 不会对数组边界进行检查,越界访问数组并不会报错。 第一种写法: let arr: (number | string)[];第二种写法ÿ…...
DeepSeek 接入PyCharm实现AI编程!(支持本地部署DeepSeek及官方DeepSeek接入)
前言 在当今数字化时代,AI编程助手已成为提升开发效率的利器。DeepSeek作为一款强大的AI模型,凭借其出色的性能和开源免费的优势,成为许多开发者的首选。今天,就让我们一起探索如何将DeepSeek接入PyCharm,实现高效、智…...
【Java Card】Applet 使用Shareable进行数据分享以及部分问题处理
文章目录 前言一、定义接口二、server端实现三、client端实现四、遇到的问题 前言 在进行开发时,可能会将业务放到不同的applet中,这时常常会需要进行数据的分享。 比如在一个applet中存储了密钥,而在另一个业务applet中需要进行签名时&…...
国产FPGA开发板选择
FPGA开发板是学习和开发FPGA的重要工具,选择合适的开发板对学习效果和开发效率至关重要。随着国产FPGA的发展,淘宝上的许多FPGA开发板店铺也开始进行国产FPGA的设计和销售,本文将对国产FPGA和相关店铺做个简单梳理,帮助有需要使用…...
com.typesafe.config
com.typesafe.config 是 Typesafe Config 库的核心包,主要用于 统一、灵活地管理应用程序配置,支持从多种格式(如 HOCON、JSON、Java Properties)加载配置,并提供类型安全的访问接口。以下是其核心功能的详细解析&…...
Ubuntu学习备忘
1. 打开Terminal快捷键 ctrl alt t 2.Ubuntu22.04的root没有默认初始密码, 为root设置密码,下面链接的step1, How to allow GUI root login on Ubuntu 22.04 Jammy Jellyfish Linux - LinuxConfig...
【C++】— 掌握STL vector 类:“Vector简介:动态数组的高效应用”
文章目录 1.vector的介绍和使用1.1vector的介绍1.2 vector的特点1.3vector的使用1.3.1vector的定义1.3.2vector iterator的使用1.3.3vector 的空间增长问题1.3.4 vector 的增删查改1.3.5vector 迭代器失效问题 1.vector的介绍和使用 1.1vector的介绍 vector是一个顺序容器&am…...
Docker__持续更新......
Docker 1. 基本知识1.1 为什么有Docker?1.2 Docker架构与容器化 画图解释 画图解释2. 项目实战 1. 基本知识 1.1 为什么有Docker? 用一行命令跨平台安装项目,在不同平台上运行项目。把项目打包分享运行应用。 1.2 Docker架构与容器化 准备机器,在机…...
【R语言】主成分分析与因子分析
一、主成分分析 主成分分析(Principal Component Analysis, PCA)是一种常用的无监督数据降维技术,广泛应用于统计学、数据科学和机器学习等领域。它通过正交化线性变换将(高维)原始数据投影到一个新的坐标系ÿ…...
告别重复敲命令!用MobaXterm宏一键搞定服务器日常巡检(附日志监控宏配置)
告别重复敲命令!用MobaXterm宏一键搞定服务器日常巡检(附日志监控宏配置) 每次登录服务器都要重复输入相同的检查命令?磁盘空间、内存占用、服务状态、日志跟踪...这些日常巡检操作既耗时又容易遗漏关键指标。今天分享一个实战技巧…...
PyTorch 2.8镜像开发者实践:AI绘画社区用该镜像快速上线Stable Video WebUI
PyTorch 2.8镜像开发者实践:AI绘画社区用该镜像快速上线Stable Video WebUI 1. 为什么选择PyTorch 2.8镜像 对于AI绘画社区的技术团队来说,搭建一个稳定高效的视频生成环境一直是个挑战。传统方式需要从零开始配置CUDA环境、安装各种依赖库,…...
全球短视频内容创作的技术挑战与Pixelle-Video的分布式架构解决方案
全球短视频内容创作的技术挑战与Pixelle-Video的分布式架构解决方案 【免费下载链接】Pixelle-Video 🚀 AI 全自动短视频引擎 | AI Fully Automated Short Video Engine 项目地址: https://gitcode.com/GitHub_Trending/pi/Pixelle-Video 在全球化内容创作浪…...
用 5 秒视频讲述精彩开场:Pika 视频生成 API,短内容的突破点
在短内容的时代,第一印象决定了你是否还有机会讲述你的故事。Ace Data Cloud 的 Pika 视频 API 允许你将“励志句子/参考图像/参考视频”转换为 5-6 秒的高质量动态效果,非常适合短视频开场、产品亮点、表情包、动画广告和节目介绍等场景。 环境准备/前…...
Cursor Pro破解工具:如何永久免费使用AI编程助手?
Cursor Pro破解工具:如何永久免费使用AI编程助手? 【免费下载链接】cursor-free-vip [Support 0.45](Multi Language 多语言)自动注册 Cursor Ai ,自动重置机器ID , 免费升级使用Pro 功能: Youve reached y…...
曦智科技港股上市涨幅383%,低调沂景资本背后竟是400亿身家山东大亨!
曦智科技上市成现象级IPO今年港股IPO首日涨幅最大的公司是刚刚上市的曦智科技。截至收盘,曦智股价大涨383%,市值飙升至814亿港元,成为上半年的现象级IPO。“麻省理工物理学博士”“价值1亿的Nature论文”,天才科学家沈亦晨的创业故…...
如何彻底解决多语言应用兼容性问题:Locale Remulator终极配置指南
如何彻底解决多语言应用兼容性问题:Locale Remulator终极配置指南 【免费下载链接】Locale_Remulator System Region and Language Simulator. 项目地址: https://gitcode.com/gh_mirrors/lo/Locale_Remulator Locale Remulator是一款基于Detours技术的系统区…...
Echo Pyramid智能语音底座开发实战与优化
1. Echo Pyramid 智能语音交互底座解析Echo Pyramid 是专为 M5Stack Atom 系列物联网控制器设计的智能语音交互底座,它让开发者能够快速构建远场语音识别、语音助手和语音控制等应用。作为一个硬件开发者,我最近深度体验了这款产品,发现它在音…...
Linux命令:telnet
telnet 命令 基本介绍 telnet 命令是一个用于远程登录的传统工具,它使用 Telnet 协议在客户端和服务器之间建立文本模式的连接。虽然它是一个较老的工具,并且安全性较低(明文传输),但在某些情况下仍然有一定的使用价值…...
HoRain云--Perl OOP编程
🎬 HoRain云小助手:个人主页 🔥 个人专栏: 《Linux 系列教程》《c语言教程》 ⛺️生活的理想,就是为了理想的生活! ⛳️ 推荐 前些天发现了一个超棒的服务器购买网站,性价比超高,大内存超划算!…...
