# Dockerfile - alpine-fat # https://github.com/openresty/docker-openresty # # This builds upon the base OpenResty alpine image that adds # some build-related packages, has perl installed for opm, # and includes luarocks and envsubst. # # NOTE: For envsubst, we install gettext (envsubst's source package), # copy it out, then uninstall gettext (to save some space as envsubst is very small) # libintl and musl are dependencies of envsubst, so those are installed as well ARG RESTY_IMAGE_BASE="openresty/openresty" ARG RESTY_IMAGE_TAG="alpine" FROM ${RESTY_IMAGE_BASE}:${RESTY_IMAGE_TAG} LABEL maintainer="Evan Wies " # Docker Build Arguments ARG RESTY_LUAROCKS_VERSION="3.5.0" RUN apk add --no-cache --virtual .build-deps \ perl-dev \ && apk add --no-cache \ bash \ build-base \ curl \ libintl \ linux-headers \ make \ musl \ outils-md5 \ perl \ unzip \ && 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 \ && apk add --no-cache --virtual .gettext gettext \ && mv /usr/bin/envsubst /tmp/ \ && apk del .build-deps .gettext \ && mv /tmp/envsubst /usr/local/bin/ # 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"