Dockerfile

changeset 154
30a0af8f9999
parent 151
936364f8efcf
child 155
68ee41b41a71
equal deleted inserted replaced
153:23b0ddf14e12 154:30a0af8f9999
1 FROM debian:9 AS squish 1 #######
2
3 FROM debian:buster-slim AS squish
2 4
3 MAINTAINER Matthew Wild <mwild1@gmail.com> 5 MAINTAINER Matthew Wild <mwild1@gmail.com>
4 6
5 RUN apt-get update \ 7 RUN apt-get update \
6 && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \ 8 && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
9 lua-socket \ 11 lua-socket \
10 lua-sec \ 12 lua-sec \
11 make \ 13 make \
12 mercurial \ 14 mercurial \
13 ca-certificates \ 15 ca-certificates \
16 bsdmainutils \
17 libidn11-dev \
18 liblua5.2-dev \
19 libssl-dev \
20 build-essential \
14 && rm -rf /var/lib/apt/lists/* 21 && rm -rf /var/lib/apt/lists/*
15 22
16 WORKDIR /tmp/build 23 WORKDIR /tmp/build
17 24
18 RUN hg clone https://code.matthewwild.co.uk/squish -b lua5.2 25 RUN hg clone https://code.matthewwild.co.uk/squish -b lua5.2
21 28
22 RUN hg clone https://hg.prosody.im/0.10 prosody 29 RUN hg clone https://hg.prosody.im/0.10 prosody
23 30
24 RUN hg clone https://code.matthewwild.co.uk/verse 31 RUN hg clone https://code.matthewwild.co.uk/verse
25 32
33 RUN cd prosody && ./configure && make
34
35 RUN sed -i '/util\.encodings/d' verse/squishy
36
26 RUN squish --prosody=./prosody verse 37 RUN squish --prosody=./prosody verse
27 38
28 ADD . riddim 39 ADD . riddim
29 40
30 RUN squish riddim 41 RUN squish riddim
31 42
32 FROM alpine:3.8 43 #########
33 44
34 MAINTAINER Prosody Developers <docker@prosody.im> 45 FROM debian:buster-slim
35 46
36 # Install dependencies 47 MAINTAINER Matthew Wild <mwild1@gmail.com>
37 RUN apk add --update --repository http://dl-3.alpinelinux.org/alpine/edge/testing/ \ 48
38 lua5.2 \ 49 RUN apt-get update \
39 lua5.2-expat \ 50 && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
40 lua5.2-socket \ 51 lua5.2 \
41 lua5.2-sec \ 52 lua-filesystem \
42 && rm -rf /var/cache/apk/* 53 lua-socket \
54 lua-sec \
55 lua-expat \
56 ca-certificates \
57 libidn11 \
58 && rm -rf /var/lib/apt/lists/*
43 59
44 WORKDIR /opt/riddim 60 WORKDIR /opt/riddim
45 61
62 RUN mkdir -p /usr/local/lib/lua/5.2/util
63
46 COPY --from=squish /tmp/build/verse.lua /opt/riddim/verse.lua 64 COPY --from=squish /tmp/build/verse.lua /opt/riddim/verse.lua
47 COPY --from=squish /tmp/build/riddim.lua /opt/riddim/riddim.lua 65 COPY --from=squish /tmp/build/riddim.lua /opt/riddim/riddim.lua
66 COPY --from=squish /tmp/build/prosody/util/encodings.so /usr/local/lib/lua/5.2/util/encodings.so
48 67
49 ADD config.docker.lua /etc/riddim/config.lua 68 ADD config.docker.lua /etc/riddim/config.lua
50 69
51 ENTRYPOINT ["/usr/bin/lua5.2", "riddim.lua"] 70 ENTRYPOINT ["/usr/bin/lua5.2", "riddim.lua"]
52 71
53 USER nobody 72 USER nobody
54 73
55 VOLUME /etc/riddim 74 VOLUME /etc/riddim
56 75
57 CMD ["/etc/riddim/config.lua"] 76 CMD ["/etc/riddim/config.lua"]
58
59

mercurial