Browse Source

Improve Docker image generation

Óscar García Amor 2 years ago
parent
commit
89f6924ae2
2 changed files with 19 additions and 14 deletions
  1. 15 11
      Dockerfile
  2. 4 3
      examples/docker-entrypoint.sh

+ 15 - 11
Dockerfile

@@ -1,12 +1,16 @@
-FROM alpine
-ENV LANG C.UTF-8
-ENV LC_ALL C.UTF-8
-RUN apk add --no-cache curl-dev build-base
+ARG ALPINE_VERSION=latest
+
+FROM alpine:${ALPINE_VERSION} AS builder
 COPY . /build
-WORKDIR /build
-RUN make
-COPY examples/docker-entrypoint.sh /usr/local/bin/entrypoint.sh
-RUN chmod +x /usr/local/bin/entrypoint.sh
-ENTRYPOINT ["/bin/sh", "/usr/local/bin/entrypoint.sh"]
-EXPOSE 8001
-CMD /build/snac
+RUN apk -U --no-progress --no-cache add curl-dev build-base && \
+  cd /build && make && \
+  make PREFIX="/build/out/usr/local" PREFIX_MAN="/build/out/usr/local/share/man" install && \
+  chmod +x examples/docker-entrypoint.sh && \
+  cp examples/docker-entrypoint.sh /build/out/usr/local/bin/entrypoint.sh
+
+FROM alpine:${ALPINE_VERSION}
+RUN apk -U --no-progress --no-cache add libcurl
+COPY --from=builder /build/out /
+EXPOSE 5050
+VOLUME [ "/data" ]
+ENTRYPOINT [ "/usr/local/bin/entrypoint.sh" ]

+ 4 - 3
examples/docker-entrypoint.sh

@@ -1,6 +1,7 @@
+#! /bin/sh
 if [ ! -e /data/data/server.json ]
 then
-    echo -ne "0.0.0.0\r\n8001\r\nlocalhost\r\n\r\n" | /build/snac init /data/data
-    /build/snac adduser /data/data testuser
+    echo -ne "0.0.0.0\r\n8001\r\nlocalhost\r\n\r\n" | snac init /data/data
+    snac adduser /data/data testuser
 fi
-SSLKEYLOGFILE=/data/key /build/snac httpd /data/data
+SSLKEYLOGFILE=/data/key snac httpd /data/data