Skip to content

Commit fa13bf7

Browse files
committed
1 parent 8a4c98c commit fa13bf7

File tree

1 file changed

+33
-3
lines changed

1 file changed

+33
-3
lines changed

Dockerfile

Lines changed: 33 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,14 @@ ARG NGINX_VERSION=1.19.2
22

33
# https://github.com/google/ngx_brotli
44
ARG NGX_BROTLI_COMMIT=25f86f0bac1101b6512135eac5f93c49c63609e3
5+
6+
# https://github.com/vision5/ngx_devel_kit/releases
7+
# https://hub.docker.com/r/firesh/nginx-lua/dockerfile
8+
ARG NGX_DEVEL_KIT_VERSION=0.3.1
9+
10+
# https://github.com/openresty/luajit2/releases
11+
ARG LUA_NGINX_MODULE_VERSION=0.10.17
12+
513
ARG CONFIG="\
614
--prefix=/etc/nginx \
715
--sbin-path=/usr/sbin/nginx \
@@ -47,6 +55,9 @@ ARG CONFIG="\
4755
--with-file-aio \
4856
--with-http_v2_module \
4957
--add-module=/usr/src/ngx_brotli \
58+
--with-ld-opt="-Wl,-rpath,/usr/lib" \
59+
--add-module=/tmp/ngx_devel_kit-${NGX_DEVEL_KIT_VERSION} \
60+
--add-module=/tmp/lua-nginx-module-${LUA_NGINX_MODULE_VERSION} \
5061
"
5162

5263
FROM alpine:3.12
@@ -55,6 +66,8 @@ LABEL maintainer="NGINX Docker Maintainers <[email protected]>"
5566
ARG NGINX_VERSION
5667
ARG NGX_BROTLI_COMMIT
5768
ARG CONFIG
69+
ARG NGX_DEVEL_KIT_VERSION
70+
ARG LUA_NGINX_MODULE_VERSION
5871

5972
RUN \
6073
apk add --no-cache --virtual .build-deps \
@@ -70,6 +83,8 @@ RUN \
7083
libxslt-dev \
7184
gd-dev \
7285
geoip-dev \
86+
luajit \
87+
luajit-dev \
7388
&& apk add --no-cache --virtual .brotli-build-deps \
7489
autoconf \
7590
libtool \
@@ -81,8 +96,14 @@ RUN \
8196
COPY nginx.pub /tmp/nginx.pub
8297

8398
RUN \
84-
echo "Compiling nginx $NGINX_VERSION with brotli $NGX_BROTLI_COMMIT" \
85-
&& mkdir -p /usr/src/ngx_brotli \
99+
echo "Fetcing lua-nginx-module $LUA_NGINX_MODULE_VERSION and nginx devel kit $NGX_DEVEL_KIT_VERSION ..." \
100+
&& curl -fSL https://github.com/simpl/ngx_devel_kit/archive/v${NGX_DEVEL_KIT_VERSION}.tar.gz -o /tmp/ndk.tar.gz \
101+
&& tar -xvf /tmp/ndk.tar.gz -C /tmp \
102+
&& curl -fSL https://github.com/openresty/lua-nginx-module/archive/v${LUA_NGINX_MODULE_VERSION}.tar.gz -o /tmp/lua-nginx.tar.gz \
103+
&& tar -xvf /tmp/lua-nginx.tar.gz -C /tmp
104+
105+
RUN \
106+
mkdir -p /usr/src/ngx_brotli \
86107
&& cd /usr/src/ngx_brotli \
87108
&& git init \
88109
&& git remote add origin https://github.com/google/ngx_brotli.git \
@@ -100,7 +121,10 @@ RUN \
100121
&& tar -zxC /usr/src -f nginx.tar.gz
101122

102123
RUN \
103-
cd /usr/src/nginx-$NGINX_VERSION \
124+
export LUAJIT_LIB=/usr/lib \
125+
&& export LUAJIT_INC=/usr/include/luajit-2.1 \
126+
&& echo "Compiling nginx $NGINX_VERSION with brotli $NGX_BROTLI_COMMIT and lua nginx module v$LUA_NGINX_MODULE_VERSION ..." \
127+
&& cd /usr/src/nginx-$NGINX_VERSION \
104128
&& ./configure $CONFIG --with-debug \
105129
&& make -j$(getconf _NPROCESSORS_ONLN) \
106130
&& mv objs/nginx objs/nginx-debug \
@@ -145,6 +169,8 @@ RUN \
145169

146170
FROM alpine:3.12
147171
ARG NGINX_VERSION
172+
ARG NGX_BROTLI_COMMIT
173+
ARG LUA_NGINX_MODULE_VERSION
148174

149175
COPY --from=0 /tmp/runDeps.txt /tmp/runDeps.txt
150176
COPY --from=0 /etc/nginx /etc/nginx
@@ -168,6 +194,10 @@ RUN \
168194
COPY nginx.conf /etc/nginx/nginx.conf
169195
COPY ssl_common.conf /etc/nginx/conf.d/ssl_common.conf
170196

197+
ENV NGINX_VERSION $NGINX_VERSION
198+
ENV NGX_BROTLI_COMMIT $NGX_BROTLI_COMMIT
199+
ENV LUA_NGINX_MODULE_VERSION $LUA_NGINX_MODULE_VERSION
200+
171201
EXPOSE 80 443
172202

173203
STOPSIGNAL SIGTERM

0 commit comments

Comments
 (0)