慢吞云雾缓吐愁 发表于 2024-9-9 20:09:58

Windows Docker 部署 Nginx 服务器

一、简介

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 服务。
docker run -d `
-p 8080:80 `
--name nginx-1.25.4 `
nginx:1.25.4
然后,实行下面命令,即可将容器内的 nginx.conf 文件拷贝到物理 C:\ProgramDatas\Docker\Containers\nginx-1.25.4\nginx.conf 文件中。拷贝完成后实行删除命令,将容器删除即可。
docker cp nginx-1.25.4:/etc/nginx/nginx.conf C:\ProgramDatas\Docker\Containers\nginx-1.25.4\nginx.conf
docker rm -f nginx-1.25.4
2.2 部署 Nginx

在 PowerShell 实行下面命令,即可启动一个 Nginx 服务。
docker run -d `
-p 8080:80 `
--restart always `
--name nginx-1.25.4 `
-v C:\ProgramDatas\Docker\Containers\nginx-1.25.4\html:/usr/share/nginx/html `
-v C:\ProgramDatas\Docker\Containers\nginx-1.25.4\nginx.conf:/etc/nginx/nginx.conf `
-v C:\ProgramDatas\Docker\Containers\nginx-1.25.4\cache:/var/cache/nginx `
-v C:\ProgramDatas\Docker\Containers\nginx-1.25.4\pid:/var/run `
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/,可以看到我们的页面,即代表部署成功。
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>NGINX</title>
</head>
<body>
    The deployment of NGINX has been completed.
</body>
</html>

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: Windows Docker 部署 Nginx 服务器