构建带headers-more-nginx-module的nginx
Dockerfile
# 使用官方的 Alpine 基础镜像 FROM dockerproxy.cn/alpine:latest ARG VERSION=1.24.0 # 更新包列表并安装必要的依赖 RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories RUN apk update && \ apk add --no-cache build-base libgcc zlib-dev pcre-dev openssl-dev git # 创建临时目录用于编译 Nginx RUN mkdir /tmp/nginx-src WORKDIR /tmp/nginx-src # 下载 Nginx 源码 RUN wget https://nginx.org/download/nginx-${VERSION}.tar.gz RUN tar -xzvf nginx-${VERSION}.tar.gz WORKDIR /tmp/nginx-src/nginx-${VERSION} # 下载 headers-more 模块 RUN git clone https://github.com/openresty/headers-more-nginx-module.git # 编译 Nginx RUN ./configure --prefix=/etc/nginx --add-module=/tmp/nginx-src/nginx-${VERSION}/headers-more-nginx-module RUN make RUN make install # 清理编译环境 RUN rm -rf /tmp/nginx-src RUN ln -s /etc/nginx/sbin/nginx /usr/bin/nginx # 复制自定义的 Nginx 配置文件到容器中 COPY nginx.conf /etc/nginx/nginx.conf WORKDIR /etc/nginx # 启动 Nginx CMD ["/etc/nginx/sbin/nginx", "-g", "daemon off;"]