2021-12-21 03:06:53 +00:00
|
|
|
# simple-shortener Dockerfile
|
|
|
|
# Produces an image (Debian-based) with all required facilities to run simple-shortener
|
|
|
|
|
|
|
|
FROM debian:buster-slim
|
|
|
|
|
|
|
|
LABEL maintainer='Jessie Hildebrandt <jessieh@jessieh.net>'
|
|
|
|
|
|
|
|
ENV PORT 80
|
2021-12-21 07:03:58 +00:00
|
|
|
WORKDIR /simple-shortener
|
2021-12-21 03:06:53 +00:00
|
|
|
|
|
|
|
# Install required packages for building luarocks and lua rocks
|
|
|
|
RUN apt-get update && apt-get install --no-install-recommends -y \
|
|
|
|
ca-certificates \
|
|
|
|
cmake \
|
|
|
|
gcc \
|
|
|
|
git \
|
|
|
|
luajit \
|
|
|
|
liblua5.1-0-dev \
|
|
|
|
libqrencode-dev \
|
|
|
|
libsqlite3-dev \
|
|
|
|
libssl-dev \
|
|
|
|
make \
|
|
|
|
tar \
|
|
|
|
unzip \
|
|
|
|
wget \
|
|
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
|
|
|
|
# Fetch, build, and install luarocks
|
|
|
|
RUN wget https://luarocks.org/releases/luarocks-3.7.0.tar.gz && \
|
|
|
|
tar xf luarocks-3.7.0.tar.gz && \
|
|
|
|
cd luarocks-3.7.0 && \
|
|
|
|
./configure && make && make install && \
|
|
|
|
cd .. && \
|
|
|
|
rm -rf luarocks-3.7.0.tar.gz luarocks-3.7.0/
|
|
|
|
|
|
|
|
# Install required rocks
|
|
|
|
RUN luarocks install basexx 0.4.1-1 && \
|
|
|
|
luarocks install ezenv 1.2-0 && \
|
|
|
|
luarocks install fennel 0.10.0-1 && \
|
|
|
|
luarocks install hashids 1.0.5-1 && \
|
|
|
|
luarocks install lume 2.3.0-0 && \
|
|
|
|
luarocks install otp 0.1-6 && \
|
|
|
|
luarocks install qrprinter 1.1-0 && \
|
|
|
|
luarocks install sqlite v1.2.0-0 && \
|
|
|
|
luarocks install turbo 2.1-2
|
|
|
|
|
|
|
|
COPY ./src .
|
|
|
|
|
|
|
|
ENTRYPOINT ["luajit", "init.lua"]
|