From 0de46888ebd7fcb6d66f40f4f4ef6672594133dc Mon Sep 17 00:00:00 2001 From: "Craig J. Midwinter" Date: Fri, 7 Dec 2018 15:12:15 -0600 Subject: [PATCH] Add dockerfile and entrypoint script --- Dockerfile | 20 ++++++++++++++++++++ entrypoint.sh | 6 ++++++ 2 files changed, 26 insertions(+) create mode 100644 Dockerfile create mode 100644 entrypoint.sh diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..cc0b80e --- /dev/null +++ b/Dockerfile @@ -0,0 +1,20 @@ +FROM golang:alpine as builder +RUN mkdir /build +ADD . /build/ +WORKDIR /build +RUN apk add git gcc musl-dev +RUN go build -o ipe ./cmd +FROM alpine +USER root +RUN mkdir -p /config +RUN adduser -S -D -H -h /app appuser +COPY ./entrypoint.sh /app/entrypoint.sh +RUN chmod +x /app/entrypoint.sh +USER appuser +WORKDIR /app +COPY --from=builder /build/ipe /app/ +COPY --from=builder /build/config-example.yml /app/config-example.yml +VOLUME /config +CMD ["/bin/sh", "/app/entrypoint.sh"] +EXPOSE 4343 +EXPOSE 8080 \ No newline at end of file diff --git a/entrypoint.sh b/entrypoint.sh new file mode 100644 index 0000000..d631cac --- /dev/null +++ b/entrypoint.sh @@ -0,0 +1,6 @@ +#!/bin/sh +if [ -z "$(ls -A /config)" ]; then + cp /app/config-example.yml /config/config.yml +fi + +/app/ipe --config=/config/config.yml \ No newline at end of file