Windows Docker 部署 Nginx 服务器

打印 上一主题 下一主题

主题 556|帖子 556|积分 1668

一、简介

Nginx 是一款高性能的 HTTP 和反向代理 web 服务器,同时也是 IMAP/POP3/SMTP 服务的提供者。它利用 C 语言编写,具有轻量级、高并发、高度可定制化和可扩展性等特点。Nginx 的并发能力在同类型网页服务器中表现优秀,可以大概处置惩罚大量并发连接,保持在高负载和大流量下的良好性能。别的,Nginx 还支持热部署,可以在不停止服务的情况下更新配置文件和软件升级。它广泛用于构建和部署现代化的 Web 应用程序,如静态文件服务、请求路由、反向代理以及缓存和加快等。
二、部署

这里安装的是 1.25.4 Tag 版本,如果须要安装其他或者最新版本,可以到 Docker Hub 进行查找。
2.1 准备 nginx.conf

首先,进行 Nginx 配置的初始化,这里是将容器内默认的配置文件拷贝到物理机。打开 Docker Desktop,切换到 Linux 容器。然后在 PowerShell 实行下面命令,即可启动一个 Nginx 服务。
  1. docker run -d `
  2. -p 8080:80 `
  3. --name nginx-1.25.4 `
  4. nginx:1.25.4
复制代码
然后,实行下面命令,即可将容器内的 nginx.conf 文件拷贝到物理 C:\ProgramDatas\Docker\Containers\nginx-1.25.4\nginx.conf 文件中。拷贝完成后实行删除命令,将容器删除即可。
  1. docker cp nginx-1.25.4:/etc/nginx/nginx.conf C:\ProgramDatas\Docker\Containers\nginx-1.25.4\nginx.conf
复制代码
  1. docker rm -f nginx-1.25.4
复制代码
2.2 部署 Nginx

在 PowerShell 实行下面命令,即可启动一个 Nginx 服务。
  1. docker run -d `
  2. -p 8080:80 `
  3. --restart always `
  4. --name nginx-1.25.4 `
  5. -v C:\ProgramDatas\Docker\Containers\nginx-1.25.4\html:/usr/share/nginx/html `
  6. -v C:\ProgramDatas\Docker\Containers\nginx-1.25.4\nginx.conf:/etc/nginx/nginx.conf `
  7. -v C:\ProgramDatas\Docker\Containers\nginx-1.25.4\cache:/var/cache/nginx `
  8. -v C:\ProgramDatas\Docker\Containers\nginx-1.25.4\pid:/var/run `
  9. nginx:1.25.4
复制代码
  -参数 --restart always 在容器退出时总是重启容器。
-参数 -v C:\ProgramDatas\Docker\Containers\nginx-1.25.4\html:/usr/share/nginx/html 映射 Nginx 默认路径到物理机。
-参数 -v C:\ProgramDatas\Docker\Containers\nginx-1.25.4\nginx.conf:/etc/nginx/nginx.conf 映射 Nginx 容器内配置文件。
-参数 -v C:\ProgramDatas\Docker\Containers\nginx-1.25.4\cache:/var/cache/nginx 映射 Nginx 缓存目录到物理机。
-参数 -v C:\ProgramDatas\Docker\Containers\nginx-1.25.4\pid:/var/run 映射 Nginx 的 PID 文件到物理机。
  三、部署检测

在物理机的 C:\ProgramDatas\Docker\Containers\nginx-1.25.4\html 目录下,创建一个 index.html 文件,内容拷贝下面的即可。然后打开浏览器,访问 8080 端口 http://localhost:8080/,可以看到我们的页面,即代表部署成功。
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4.     <meta charset="UTF-8">
  5.     <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6.     <title>NGINX</title>
  7. </head>
  8. <body>
  9.     The deployment of NGINX has been completed.
  10. </body>
  11. </html>
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

慢吞云雾缓吐愁

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表