diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..96f81bc --- /dev/null +++ b/.dockerignore @@ -0,0 +1,2 @@ +Dockerfile +.git diff --git a/Dockerfile b/Dockerfile index a2dd072..bbbedd0 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,15 +1,32 @@ -FROM golang:1.11.2-alpine3.8 +FROM golang:1.11.2-alpine3.8 as build RUN apk add --update nodejs nodejs-npm make git RUN npm install -g less RUN npm install -g less-plugin-clean-css WORKDIR /go/src/app COPY . . RUN make install RUN make ui RUN make deps +RUN mkdir /stage && \ + cp -R /go/bin \ + /go/src/app/templates \ + /go/src/app/static \ + /go/src/app/schema.sql \ + /go/src/app/pages \ + /go/src/app/keys \ + /stage + +FROM alpine:3.8 + +COPY --from=build --chown=daemon:daemon /stage /go + +WORKDIR /go +VOLUME /go/keys EXPOSE 8080 -CMD ["writefreely"] +USER daemon + +CMD ["bin/writefreely"]