dockerfile nginx添加ngx_http_image_filter_module 模块
时间: 2023-09-18 12:08:27 浏览: 214
rh-nginx112-nginx-mod-http-image-filter-1.12.1-2.el7.x86_64.rpm
以下是在Dockerfile中添加ngx_http_image_filter_module模块的示例:
```
FROM nginx:latest
# 下载并解压ngx_http_image_filter_module模块
RUN wget https://github.com/openresty/headers-more-nginx-module/archive/v0.33.tar.gz \
&& tar -zxvf v0.33.tar.gz
# 安装编译依赖
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
build-essential \
libjpeg-dev \
&& rm -rf /var/lib/apt/lists/*
# 编译Nginx,并添加ngx_http_image_filter_module模块
RUN cd /usr/src/nginx \
&& ./configure --add-module=/headers-more-nginx-module-0.33 \
&& make \
&& make install
# 复制Nginx配置文件
COPY nginx.conf /usr/local/nginx/conf/nginx.conf
# 暴露80端口
EXPOSE 80
# 启动Nginx
CMD ["nginx", "-g", "daemon off;"]
```
其中,/headers-more-nginx-module-0.33是ngx_http_image_filter_module模块源码的路径,nginx.conf是Nginx配置文件。
在Dockerfile中添加ngx_http_image_filter_module模块时需要注意以下几点:
1. 需要安装编译依赖,包括build-essential和libjpeg-dev。
2. 需要在Nginx源码目录下执行configure命令时添加--add-module参数,并指定ngx_http_image_filter_module模块的路径。
3. 需要复制Nginx配置文件到容器中,并在启动Nginx时指定该配置文件。
4. 需要暴露Nginx的80端口。
5. 需要在CMD命令中启动Nginx。
阅读全文