Dockerfile

changeset 0
6279a7d40ae7
child 1
ab05314b412c
equal deleted inserted replaced
-1:000000000000 0:6279a7d40ae7
1 ####################################
2 FROM debian:buster-slim as build
3
4 MAINTAINER Matthew Wild <mwild1@gmail.com>
5
6 RUN apt-get update \
7 && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
8 lua5.2 \
9 liblua5.2-dev \
10 libidn11-dev \
11 libssl-dev \
12 build-essential \
13 && rm -rf /var/lib/apt/lists/*
14
15 WORKDIR /tmp/build
16
17 ADD https://hg.prosody.im/trunk/archive/tip.tar.gz ./prosody.tar.gz
18
19 RUN tar --strip-components=1 -xzf prosody.tar.gz \
20 && ./configure && make
21
22 ADD src/web/ util/
23
24 ############################
25 FROM debian:buster-slim
26
27 RUN apt-get update \
28 && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
29 tini \
30 lua5.2 \
31 lua-cjson \
32 lua-expat \
33 lua-filesystem \
34 lua-sec \
35 lua-socket \
36 libidn11 \
37 lua-dbi-postgresql \
38 lua-scrypt \
39 && rm -rf /var/lib/apt/lists/*
40
41 COPY --from=build /tmp/build/util /usr/local/lib/lua-web-app/util
42 COPY --from=build /tmp/build/net /usr/local/lib/lua-web-app/net
43
44 ENV LUA_WEB_APP_FRAMEWORK /usr/local/lib/lua-web-app
45
46 ADD src/ /usr/local/lib/lua-web-app
47
48 WORKDIR /opt
49
50 ADD default-app/html ./html
51 ADD default-app/app ./app
52
53 ADD config.dist.lua /etc/app/config.lua
54
55 VOLUME /var/lib/app
56
57 ENV LISTEN_INTERFACE *
58 ENV LISTEN_PORT 8007
59 EXPOSE 8007
60
61 ENTRYPOINT ["/usr/bin/tini"]
62 CMD ["/usr/bin/lua5.2", "/usr/local/lib/lua-web-app/main.lua", "/etc/app/config.lua"]

mercurial