nginx/Dockerfile

39 lines
1.2 KiB
Docker
Raw Normal View History

2024-08-18 12:19:32 +00:00
ARG NGINX_VERSION=1.27.1
ARG GEOIP2_VERSION=3.4
# Build
FROM nginx:$NGINX_VERSION AS build
RUN mkdir -p /var/lib/GeoIP/
RUN apt-get update \
&& apt-get install -y \
build-essential \
libpcre2-dev \
zlib1g-dev \
libgeoip-dev \
libmaxminddb-dev \
wget \
git
RUN cd /opt \
&& git clone --depth 1 -b $GEOIP2_VERSION --single-branch https://github.com/leev/ngx_http_geoip2_module.git \
&& wget -O - http://nginx.org/download/nginx-$NGINX_VERSION.tar.gz | tar zxfv - \
&& mv /opt/nginx-$NGINX_VERSION /opt/nginx \
&& cd /opt/nginx \
&& ./configure --with-compat --add-dynamic-module=/opt/ngx_http_geoip2_module --with-stream \
&& make modules
# Production
FROM nginx:$NGINX_VERSION AS production
COPY --from=build /opt/nginx/objs/ngx_http_geoip2_module.so /usr/lib/nginx/modules
COPY --from=build /opt/nginx/objs/ngx_stream_geoip2_module.so /usr/lib/nginx/modules
RUN apt-get update \
&& apt-get install -y --no-install-recommends --no-install-suggests libmaxminddb0 \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/* \
&& chmod -R 644 /usr/lib/nginx/modules/ngx_http_geoip2_module.so \
&& chmod -R 644 /usr/lib/nginx/modules/ngx_stream_geoip2_module.so