nginx compile
This commit is contained in:
70
Dockerfile
70
Dockerfile
@@ -7,6 +7,7 @@ ARG RESTY_PCRE_VERSION="8.44"
|
||||
ARG RESTY_OPENSSL_VERSION="1.1.1k"
|
||||
ARG RESTY_OPENSSL_PATCH_VERSION="1.1.1f"
|
||||
ARG RESTY_OPENSSL_URL_BASE="https://www.openssl.org/source"
|
||||
ARG RESTY_LUAROCKS_VERSION="3.5.0"
|
||||
|
||||
RUN apt-get update && apt-get -y upgrade \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
@@ -39,9 +40,16 @@ RUN ls
|
||||
RUN wget https://ftp.pcre.org/pub/pcre/pcre-${RESTY_PCRE_VERSION}.tar.gz -O pcre-${RESTY_PCRE_VERSION}.tar.gz \
|
||||
&& tar xvf pcre-${RESTY_PCRE_VERSION}.tar.gz
|
||||
|
||||
|
||||
RUN mv pcre-${RESTY_PCRE_VERSION} pcre && rm pcre-${RESTY_PCRE_VERSION}.tar.gz
|
||||
RUN ls
|
||||
|
||||
RUN cd /tmp/pcre && ./configure \
|
||||
--prefix=/usr/local/openresty/pcre \
|
||||
--disable-cpp \
|
||||
--enable-jit \
|
||||
--enable-utf \
|
||||
--enable-unicode-properties
|
||||
|
||||
RUN cd /tmp
|
||||
|
||||
|
||||
#curl -fSL "${RESTY_OPENSSL_URL_BASE}/openssl-${RESTY_OPENSSL_VERSION}.tar.gz" -o openssl-${RESTY_OPENSSL_VERSION}.tar.gz \
|
||||
@@ -63,10 +71,62 @@ RUN ./configure --with-pcre=/tmp/pcre --with-openssl=/tmp/openssl --add-module=/
|
||||
--with-http_v2_module \
|
||||
--with-http_sub_module \
|
||||
--with-mail \
|
||||
--with-stream_ssl_module
|
||||
--with-stream_ssl_module \
|
||||
--with-pcre-jit
|
||||
|
||||
RUN make && make install
|
||||
RUN ln -sf /dev/stdout /usr/local/openresty/nginx/logs/access.log \
|
||||
&& ln -sf /dev/stderr /usr/local/openresty/nginx/logs/error.log
|
||||
|
||||
|
||||
# Copy nginx configuration files
|
||||
COPY conf_nginx .
|
||||
COPY ./conf/nginx.conf /usr/local/openresty/nginx/conf/nginx.conf
|
||||
COPY ./conf/nginx.vh.default.conf /etc/nginx/conf.d/default.conf
|
||||
|
||||
COPY compile .
|
||||
RUN ./compile
|
||||
|
||||
|
||||
RUN mkdir -p /var/run/openresty \
|
||||
#&& mkdir -p /usr/local/openresty/nginx/logs \
|
||||
&& ln -sf /dev/stdout /usr/local/openresty/nginx/logs/access.log \
|
||||
&& ln -sf /dev/stderr /usr/local/openresty/nginx/logs/error.log
|
||||
# Add additional binaries into PATH for convenience
|
||||
ENV PATH=$PATH:/usr/local/openresty/luajit/bin:/usr/local/openresty/nginx/sbin:/usr/local/openresty/bin
|
||||
|
||||
# install LuaRocks
|
||||
RUN DEBIAN_FRONTEND=noninteractive apt-get update \
|
||||
&& DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
|
||||
&& cd /tmp \
|
||||
&& curl -fSL https://luarocks.github.io/luarocks/releases/luarocks-${RESTY_LUAROCKS_VERSION}.tar.gz -o luarocks-${RESTY_LUAROCKS_VERSION}.tar.gz \
|
||||
&& tar xzf luarocks-${RESTY_LUAROCKS_VERSION}.tar.gz \
|
||||
&& cd luarocks-${RESTY_LUAROCKS_VERSION} \
|
||||
&& ./configure \
|
||||
--prefix=/usr/local/openresty/luajit \
|
||||
--with-lua=/usr/local/openresty/luajit \
|
||||
--lua-suffix=jit-2.1.0-beta3 \
|
||||
--with-lua-include=/usr/local/openresty/luajit/include/luajit-2.1 \
|
||||
&& make build \
|
||||
&& make install \
|
||||
&& cd /tmp \
|
||||
&& rm -rf luarocks-${RESTY_LUAROCKS_VERSION} luarocks-${RESTY_LUAROCKS_VERSION}.tar.gz
|
||||
|
||||
# Add LuaRocks paths
|
||||
# If OpenResty changes, these may need updating:
|
||||
# /usr/local/openresty/bin/resty -e 'print(package.path)'
|
||||
# /usr/local/openresty/bin/resty -e 'print(package.cpath)'
|
||||
ENV LUA_PATH = "/usr/local/openresty/site/lualib/?.ljbc;/usr/local/openresty/site/lualib/?/init.ljbc;/usr/local/openresty/lualib/?.ljbc;/usr/local/openresty/lualib/?/init.ljbc;/usr/local/openresty/site/lualib/?.lua;/usr/local/openresty/site/lualib/?/init.lua;/usr/local/openresty/lualib/?.lua;/usr/local/openresty/lualib/?/init.lua;./?.lua;/usr/local/openresty/luajit/share/luajit-2.1.0-beta3/?.lua;/usr/local/share/lua/5.1/?.lua;/usr/local/share/lua/5.1/?/init.lua;/usr/local/openresty/luajit/share/lua/5.1/?.lua;/usr/local/openresty/luajit/share/lua/5.1/?/init.lua"
|
||||
# "
|
||||
ENV LUA_CPATH = "/usr/local/openresty/site/lualib/?.so;/usr/local/openresty/lualib/?.so;./?.so;/usr/local/lib/lua/5.1/?.so;/usr/local/openresty/luajit/lib/lua/5.1/?.so;/usr/local/lib/lua/5.1/loadall.so;/usr/local/openresty/luajit/lib/lua/5.1/?.so"
|
||||
# install a rock
|
||||
RUN /usr/local/openresty/luajit/bin/luarocks install ljsyscall
|
||||
|
||||
|
||||
RUN luarocks install lua-resty-auto-ssl \
|
||||
&& mkdir /etc/resty-auto-ssl \
|
||||
&& chown www-data /etc/resty-auto-ssl
|
||||
|
||||
|
||||
|
||||
CMD ["/usr/local/openresty/bin/openresty", "-g", "daemon off;"]
|
||||
|
||||
# Use SIGQUIT instead of default SIGTERM to cleanly drain requests
|
||||
|
||||
Reference in New Issue
Block a user