From b7c3b77a8e3fa388754e6ce62ee9f50ca4b96e31 Mon Sep 17 00:00:00 2001 From: Maxim Likhachev Date: Wed, 11 Dec 2019 11:35:20 +0300 Subject: [PATCH] Add Dockerfile --- Dockerfile | 35 +++++++++++++++++++++++++++++++++++ Makefile | 8 ++++++++ 2 files changed, 43 insertions(+) create mode 100644 Dockerfile diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..0746332 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,35 @@ +FROM golang:alpine as builder + +WORKDIR /lexis + +COPY lexis.go . + +RUN apk add --no-cache git + +RUN go get github.com/PuerkitoBio/goquery +RUN go get github.com/gorilla/mux +RUN go build lexis.go + +#---------------------------------- + +FROM alpine:edge + +ENV PORT 9000 + +ENV service_user="lexis" + +RUN addgroup -S ${service_user} && adduser -S ${service_user} -G ${service_user} + +RUN mkdir -p /lexis && chown -R ${service_user}:${service_user} /lexis + +WORKDIR /lexis + +USER "$service_user" + +COPY web web +COPY --from=builder /lexis/lexis . + +EXPOSE $PORT + +ENTRYPOINT ./lexis -serve -port "${PORT}" + diff --git a/Makefile b/Makefile index 1c3db28..5277d05 100644 --- a/Makefile +++ b/Makefile @@ -13,6 +13,14 @@ build: serve: build ${APP} --serve +docker: docker_build docker_run + +docker_build: + docker build -t lexis/lexis:latest -f Dockerfile . + +docker_run: + docker run lexis/lexis:latest + %: @true