guesstimate/Dockerfile

37 lines
720 B
Docker

FROM golang:1.19 AS build
ARG HTTP_PROXY=
ARG HTTPS_PROXY=
ARG http_proxy=
ARG https_proxy=
RUN apt-get update && apt-get install -y build-essential git bash curl
RUN curl -sL https://deb.nodesource.com/setup_16.x | bash - \
&& apt-get install -y nodejs
COPY . /src
WORKDIR /src
RUN ( cd client && npm ci ) \
&& ( cd server && go mod vendor ) \
&& make ARCH_TARGETS=amd64 release
FROM busybox
COPY --from=build /src/release/server-linux-amd64 /app
WORKDIR /app
COPY misc/dokku/CHECKS /client/CHECKS
EXPOSE 80
VOLUME /data
ENV GUESSTIMATE_HTTP_ADDRESS=:80
ENV GUESSTIMATE_HTTP_PUBLIC_DIR=/app/public
ENV GUESSTIMATE_DATA_PATH=/data/guesstimate.db
CMD ["/app/bin/server", "-config", "config.yml"]