Files
Eugene Howe 2666bf0ff3
All checks were successful
Docker Build and Publish / publish (push) Successful in 1m37s
fix docker build
2026-02-17 09:56:30 -05:00

42 lines
1.6 KiB
Docker

FROM golang:1.25.6 AS gobuilder
WORKDIR /opt/app-root
COPY Makefile .tool-versions go.mod go.sum ./
RUN --mount=type=tmpfs,target=/tmp \
--mount=type=cache,target=/go/pkg/mod,id=calculate-negative-points-go1256-mod-cache \
--mount=type=cache,target=/root/.cache/go-build,id=calculate-negative-points-go1256-build-cache \
make mod
COPY . /opt/app-root/
RUN --mount=type=tmpfs,target=/tmp \
--mount=type=cache,target=/go/pkg/mod,id=calculate-negative-points-go1256-mod-cache \
--mount=type=cache,target=/root/.cache/go-build,id=calculate-negative-points-go1256-build-cache \
CGO_ENABLED="0" BINDIR="/usr/local/bin" make clean; CGO_ENABLED="0" BINDIR="/usr/local/bin" make build
FROM oven/bun:1.3.8 AS bunbuilder
ENV NODE_ENV="production"
COPY . /opt/app-root
WORKDIR /opt/app-root/frontend
RUN --mount=type=tmpfs,target=/tmp --mount=type=tmpfs,target=/var/log \
--mount=type=cache,target=/usr/local/share/.cache/yarn,id=calculate-negative-points-bun138-build-share-yarn-cache \
--mount=type=cache,target=/opt/app-root/frontend/node_modules,id=calculate-negative-points-bun138-build-app-node-modules \
bun install; bunx --bun vite build
FROM golang:1.25.6 AS final
WORKDIR $NON_ROOT_USER_HOME
COPY --from=bunbuilder /opt/app-root/public /opt/app-root/public
COPY --from=gobuilder /usr/local/bin/calculate_negative_points /usr/local/bin/calculate_negative_points
COPY --from=gobuilder /opt/app-root/internal/views /opt/app-root/views
COPY config/ /opt/app-root/config
ENV TZ=America/Detroit
EXPOSE 3000
CMD ["/usr/local/bin/calculate_negative_points", "--listen", "0.0.0.0:3000"]