三、Docker搭建nginx
发布日期:2021-05-07 01:08:22 浏览次数:24 分类:精选文章

本文共 2325 字,大约阅读时间需要 7 分钟。

如何在 CentOS 7.8 上轻松部署 Nginx 开发环境

在 CentOS 7.8 中部署 Nginx 是一个简单但高效的方法,适合开发和测试环境使用。本文将详细介绍如何通过 Docker 快速搭建 Nginx 服务器,并进行必要的配置。


系统环境

  • 操作系统:CentOS 7.8(运行于 VMware 中)
  • 镜像版本:Nginx:latest

第一步:拉取 Nginx 镜像

首先,我们需要从 Docker 官方仓库拉取 Nginx 镜像。打开终端,执行以下命令:

docker pull nginx:latest

这一步会下载并缓存最新版本的 Nginx 镜像。


第二步:启动 Nginx 容器

接下来,我们需要启动一个新的 Nginx 容器。使用以下命令创建并运行容器:

docker run --name my_nginx_2020 -d -p 80:80 --restart=always -e TZ="Asia/Shanghai" nginx:latest
  • --name my_nginx_2020:指定容器名称,便于管理。
  • -p 80:80:将宿主机的端口 80 映射到容器内的端口 80。
  • --restart=always:确保容器在系统重启时自动启动。
  • -e TZ="Asia/Shanghai":设置时区为上海,避免时间差问题。

运行完成后,可以通过 docker ps 查看容器状态。


第三步:访问 Nginx 服务器

在浏览器中打开地址栏,输入 http://localhosthttp://127.0.0.1,即可访问 Nginx 服务器。默认状态下,页面显示 "Welcome to Nginx!"。


第四步:挂载文件到宿主机

如果需要在宿主机上直接修改 Nginx 配置文件或上传项目文件,可以通过挂载的方式将文件夹或文件添加到容器中。

方法一:挂载特定文件夹

使用以下命令将宿主机的文件夹挂载到容器中:

docker run --name my_nginx_2020 -d -p 80:80 --restart=always -e TZ="Asia/Shanghai" -v /path/to/your/nginx/config:/etc/nginx/nginx.conf:ro nginx:latest
  • -v /path/to/your/nginx/config:/etc/nginx/nginx.conf:ro:将宿主机的 Nginx 配置文件挂载到容器的 /etc/nginx/nginx.conf 路径,读取只允许(:ro)。

方法二:完整挂载

为了避免配置文件丢失,可以使用以下命令将相关文件夹挂载到宿主机:

docker run --name my_nginx_2020 -d -p 80:80 --restart=always -e TZ="Asia/Shanghai" -v /path/to/your/nginx/html:/usr/share/nginx/html -v /path/to/your/nginx/log:/var/log/nginx -v /path/to/your/nginx/nginx.conf:/etc/nginx/nginx.conf:ro nginx:latest
  • -v /usr/share/nginx/html:挂载宿主机的静态文件目录到容器的 /usr/share/nginx/html
  • -v /var/log/nginx:挂载宿主机的日志文件目录到容器的 /var/log/nginx

第五步:配置 Nginx

进入容器并修改配置文件。使用以下命令登录容器:

docker exec -it my_nginx_2020 bash

默认路径为 /etc/nginx,配置文件主要包括:

  • nginx.conf:全局配置,包括 worker_processes、events、log_format 等。
  • conf.d/:存放多个虚拟服务器的配置文件,默认包含 default.conf

通过修改这些文件,可以自定义 Nginx 的行为。例如,设置访问路径、日志格式等。


第六步:修改静态文件

默认情况下,Nginx 将静态文件存储在 /usr/share/nginx/html。修改 index.html 文件以展示自定义内容。例如,将其修改为:

Hello World

欢迎访问我的网站!


第七步:重新启动 Nginx 容器

为了使配置生效,需要重启 Nginx 容器。使用以下命令停止并重新启动容器:

docker stop my_nginx_2020
docker start my_nginx_2020

第八步:测试访问

在浏览器中访问 http://localhost,确认页面已更新为 "欢迎访问我的网站!"。


第九步:优化配置

为了提高性能,可以在 Nginx 配置中添加以下内容:

keepalive_timeout 300; # 保存空闲连接的超时
fastcgi_connect_timeout 300; # FastCGI 连接超时
fastcgi_send_timeout 300; # FastCGI 数据发送超时
fastcgi_read_timeout 300; # FastCGI 读取超时
sendfile on; # 启用 sendfile

通过以上步骤,您已经成功在 CentOS 7.8 环境中部署并配置了一个功能完善的 Nginx 服务器。这个服务器可以用于开发、测试或轻量级的静态文件托管。

上一篇:PHP---swoole热更新设置
下一篇:7.Dockerfile构建镜像

发表评论

最新留言

表示我来过!
[***.240.166.169]2025年03月25日 09时23分36秒