当前位置: 首页 > wzjs >正文

营销网站建设实训总结搜索推广竞价托管哪家好

营销网站建设实训总结,搜索推广竞价托管哪家好,关于家乡的网页制作教程,互联网网站建设问卷调查目录 1. 为什么需要自定义 Nginx 镜像? 2. Dockerfile 解析 2.1 基础镜像选择 2.2 安装依赖 2.3 下载并解压 Nginx 源码 2.4 应用补丁并编译 Nginx 2.5 暴露端口并设置启动命令 3. 构建并运行自定义 Nginx 镜像 3.1 构建镜像 3.2 运行容器 3.3 健康检测配…

目录

1. 为什么需要自定义 Nginx 镜像?

2. Dockerfile 解析

2.1 基础镜像选择

2.2 安装依赖

2.3 下载并解压 Nginx 源码

2.4 应用补丁并编译 Nginx

2.5 暴露端口并设置启动命令

3. 构建并运行自定义 Nginx 镜像

3.1 构建镜像

3.2 运行容器

3.3 健康检测配置

4. 验证

5. 总结


1. 为什么需要自定义 Nginx 镜像?

Nginx 是一个高性能的 HTTP 服务器和反向代理服务器,广泛应用于生产环境中。然而,默认的 Nginx 镜像可能不包含我们所需的特定模块或配置。通过自定义 Nginx 镜像,我们可以:

  • 集成第三方模块(如 nginx_upstream_check_module)。

  • 优化配置以满足特定需求。

  • 减少镜像大小,提高部署效率。

2. Dockerfile 解析

下面是我们将要使用的 Dockerfile,它基于 Alpine Linux 构建,并集成了 nginx_upstream_check_module 模块。

# 使用构建基础镜像,例如 Alpine Linux,并标记为构建阶段
FROM alpine:3.21.2# 安装必要的依赖包,并清理缓存以减少镜像大小
RUN apk add --no-cache \build-base \pcre2-dev \openssl-dev \zlib-dev \linux-headers \&& rm -rf /var/cache/apk/*# 创建工作目录
WORKDIR /usr/local/src# 下载 Nginx 源码和 nginx_upstream_check_module 源码,并解压
RUN wget http://nginx.org/download/nginx-1.25.3.tar.gz && \tar -zxvf nginx-1.25.3.tar.gz && \wget https://codeload.github.com/yaoweibin/nginx_upstream_check_module/zip/master && \unzip master# 切换到 Nginx 源码目录,配置、编译并安装 Nginx
WORKDIR nginx-1.25.3RUN patch -p1 < ../nginx_upstream_check_module-master/check_1.20.1+.patchRUN ./configure --prefix=/usr/local/nginx \--with-http_stub_status_module \--with-http_ssl_module \--add-module=../nginx_upstream_check_module-master \&& make \&& make install \&& rm -rf /usr/local/src/*  # 清理源码和临时文件,减少最终镜像大小# 暴露 Nginx 常用的端口
EXPOSE 80 443 8080 8000WORKDIR /usr/local/nginx/sbin
# 设置 Nginx 为容器启动时执行的命令
CMD ["/usr/local/nginx/sbin/nginx", "-g", "daemon off;"]

2.1 基础镜像选择

我们选择了 alpine:3.21.2 作为基础镜像。Alpine Linux 是一个轻量级的 Linux 发行版,镜像体积小,适合构建最小化的 Docker 镜像。

2.2 安装依赖

在构建 Nginx 之前,我们需要安装一些必要的依赖包,如 build-basepcre2-devopenssl-dev 等。这些依赖包是编译 Nginx 所必需的。 

RUN apk add --no-cache \build-base \pcre2-dev \pcre2 \openssl-dev \zlib-dev \linux-headers \&& rm -rf /var/cache/apk/*

2.3 下载并解压 Nginx 源码

接下来,我们下载 Nginx 的源码和 nginx_upstream_check_module 模块的源码,并解压它们。

RUN wget http://nginx.org/download/nginx-1.25.3.tar.gz && \tar -zxvf nginx-1.25.3.tar.gz && \wget https://codeload.github.com/yaoweibin/nginx_upstream_check_module/zip/master && \unzip master

2.4 应用补丁并编译 Nginx

nginx_upstream_check_module 模块需要打补丁才能与 Nginx 1.20.1+ 版本兼容。我们使用 patch 命令应用补丁,然后配置、编译并安装 Nginx。 

RUN patch -p1 < ../nginx_upstream_check_module-master/check_1.20.1+.patchRUN ./configure --prefix=/usr/local/nginx \--with-http_stub_status_module \--with-http_ssl_module \--add-module=../nginx_upstream_check_module-master \&& make \&& make install \&& rm -rf /usr/local/src/*  # 清理源码和临时文件,减少最终镜像大小

2.5 暴露端口并设置启动命令

最后,我们暴露 Nginx 常用的端口(80、443、8080、8000),并设置 Nginx 为容器启动时执行的命令。

EXPOSE 80 443 8080 8000WORKDIR /usr/local/nginx/sbin
CMD ["/usr/local/nginx/sbin/nginx", "-g", "daemon off;"]

3. 构建并运行自定义 Nginx 镜像

3.1 构建镜像

在 Dockerfile 所在的目录下,运行以下命令构建镜像:

docker build -t nginx-upstream-check:1.25.3 .

3.2 运行容器

构建完成后,可以使用以下命令运行容器:

docker run -d -p 8000:8000 -v /home/nginx/conf:/usr/local/nginx/conf -v /home/nginx/logs:/usr/local/nginx/logs   nginx-upstream-check:1.25.3

3.3 健康检测配置

upstream upstream1 {server www.baidu.com;server 192.168.1.3:8080;server 192.168.1.4:8080;# 每隔2秒检查后端真实节点状态,成功2次为up状态,失败3次为down状态,超时时间为1秒check interval=2000 rise=2 fall=3 timeout=1000 type=http;# 设置描述了检查模块在每次检查时,向后端节点发送什么样的信息check_http_send "HEAD / HTTP/1.0\r\n\r\n";# 健康的状态码 check_http_expect_alive http_2xx http_3xx;
}

4. 验证

出现以下相关日志表示已经成功

5. 总结

通过本文,我们学习了如何使用 Dockerfile 构建一个自定义的 Nginx 镜像,并集成了 nginx_upstream_check_module 模块。这种自定义镜像不仅可以根据需求灵活配置,还能减少镜像体积,提高部署效率。希望本文对你有所帮助,欢迎在评论区分享你的想法和经验!


参考链接:

  • Nginx 官方文档

  • nginx_upstream_check_module GitHub 仓库

  • Alpine Linux 官方镜像

http://www.dtcms.com/wzjs/459143.html

相关文章:

  • 做网站需要用到什么技术久久seo正规吗
  • 购买网站服务器近期国际新闻20条
  • 贵州网站制作公司电话电脑培训学校学费多少
  • 保定市网站建设亚洲7号卫星电视
  • 运营电商湖南有实力seo优化哪家好
  • wordpress mu 模板seo怎么做最佳
  • 文字排版网站江东seo做关键词优化
  • 网站拒绝了您的访问首页百度
  • 苹果app上架需要多少钱seo排名推广
  • 重庆教育网站建设今日要闻
  • 使用云主机做网站教程百度首页网站推广多少钱一年
  • 减肥网站如何做seo关键词优化方法
  • 网站展示怎么做青岛seo关键词优化公司
  • 广东城乡住房建设厅网站网站设计制作公司
  • 电子商务网站建设与管理思考与练习百度百度一下首页
  • 网站开发语百度号码认证平台取消标记
  • 企业网站和官网的区别营销网站策划方案
  • 北京网站建设哪家最好济南seo全网营销
  • 化工外贸网站建设seo是什么意思电商
  • 郑州哪里可以做网站网站推广软件ky99
  • 南沙做网站公司网络营销策划方案书范文
  • W做网站如何制作一个网页
  • 长沙企业模板建站自动推广软件
  • 广告策划书不包括什么内容广州seo工程师
  • 创建网站需要什么陕西新闻今日头条
  • 淘宝优惠群的网站是怎么做建站公司排名
  • 网站栏目设置说明百度发布
  • 如何做好公司网站建设北京优化网站建设
  • 网站开发的基本条件产品推广怎么做
  • 广东网站设计服务商google官网注册账号入口