You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

37 lines
1.7 KiB
Docker

FROM docker.io/library/alpine:3.14
# we need bash for luaver:
RUN apk add --no-cache bash && echo "" > /root/.ash_history
RUN sed -i -e "s/bin\/ash/bin\/bash/" /etc/passwd
ENV LC_ALL=en_US.UTF-8
# requirements for various luarocks packages:
RUN apk add --no-cache build-base bsd-compat-headers m4 openssl-dev libmagic libuuid lmdb lmdb-dev git readline-dev autoconf automake libtool zlib-dev vips ncurses wget unzip openssl util-linux-dev
# install luaver and install luarocks packages:
RUN ln -s /usr/lib/libvips.so.42 /usr/lib/libvips.so \
&& git config --global url."https://".insteadOf git:// \
&& git clone https://git.sakal.us/brian/luaver.git ~/.luaver
RUN ["bash", "-c", "\
{ . ~/.luaver/luaver; } \
; { yes | luaver install 5.1.5; } \
&& { yes | luaver install-luajit 2.0.5; } \
&& luaver use 5.1.5 && luaver set-default 5.1.5 \
&& luaver use-luajit 2.0.5 && luaver set-default-luajit 2.0.5 \
&& { yes | luaver install-luarocks 3.8.0; } \
&& luaver use-luarocks 3.8.0 && luaver set-default-luarocks 3.8.0 \
&& luarocks install luarocks-fetch-gitrec \
&& luarocks install compat53 \
&& luarocks install cqueues \
&& luarocks install lpeg \
&& luarocks install lpeg_patterns \
&& luarocks install luafilesystem \
&& luarocks install http \
&& luarocks install lua-cjson \
&& luarocks install mimetypes \
&& luarocks install lrandom \
&& luarocks install luaprompt \
&& luarocks install magic \
&& luarocks install lightningmdb \
&& luarocks install lua_uuid \
&& luarocks install lua-vips"]
WORKDIR /app/server
EXPOSE 8000
CMD ["bash", "-c", "{ . ~/.luaver/luaver; } ; luajit ./server.lua"]