Dockerfile

Mon, 22 Nov 2021 12:16:17 +0000

author
Matthew Wild <mwild1@gmail.com>
date
Mon, 22 Nov 2021 12:16:17 +0000
changeset 6
8ff56a650fc7
parent 5
1925a65de6ff
child 8
0f9aea96d446
permissions
-rw-r--r--

Upgrade runtime environment to Debian bullseye

####################################
FROM debian:bullseye-slim as build

MAINTAINER Matthew Wild <mwild1@gmail.com>

RUN apt-get update \
    && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
        lua5.2 \
        liblua5.2-dev \
        libidn11-dev \
        libicu-dev \
        libssl-dev \
        libunbound-dev \
        build-essential \
    && rm -rf /var/lib/apt/lists/*

WORKDIR /tmp/build

ADD https://hg.prosody.im/trunk/archive/16cf863b36c0.tar.gz ./prosody.tar.gz

RUN tar --strip-components=1 -xzf prosody.tar.gz \
 && ./configure && make

ADD src/web/ util/

ADD https://code.zash.se/dl/luaunbound/luaunbound-0.5.tar.gz ./luaunbound-0.5.tar.gz

RUN tar -xzf luaunbound-0.5.tar.gz \
 && make -C luaunbound-0.5

############################
FROM debian:bullseye-slim

RUN apt-get update \
    && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
        tini \
        lua5.2 \
        lua-cjson \
        lua-expat \
	lua-filesystem \
        lua-sec \
        lua-socket \
        libidn11 \
        libicu67 \
        lua-dbi-postgresql \
        libunbound8 \
    && rm -rf /var/lib/apt/lists/*

COPY --from=build /tmp/build/util /usr/local/lib/lua-web-app/util
COPY --from=build /tmp/build/net /usr/local/lib/lua-web-app/net
COPY --from=build /tmp/build/luaunbound-0.5/lunbound.so /usr/local/lib/lua/5.2/lunbound.so

ENV LUA_WEB_APP_FRAMEWORK /usr/local/lib/lua-web-app

ADD src/ /usr/local/lib/lua-web-app

WORKDIR /opt

ADD default-app/html ./html
ADD default-app/app ./app

ADD config.dist.lua /etc/app/config.lua

VOLUME /var/lib/app

ENV LISTEN_INTERFACE *
ENV LISTEN_PORT 8007
EXPOSE 8007

ENTRYPOINT ["/usr/bin/tini"]
CMD ["/usr/bin/lua5.2", "/usr/local/lib/lua-web-app/main.lua", "/etc/app/config.lua"]

mercurial