2024-08-18 12:19:32 +00:00
|
|
|
ARG NGINX_VERSION=1.27.1
|
|
|
|
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
|
|
|
|
|
2024-08-18 12:30:09 +00:00
|
|
|
ARG GEOIP2_VERSION=3.4
|
2024-08-18 12:19:32 +00:00
|
|
|
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
|