FROM node:20-alpine AS frontend WORKDIR /src COPY frontend/package.json frontend/package-lock.json* ./ RUN npm install COPY frontend/ . RUN npm run build FROM golang:1.23-alpine AS backend WORKDIR /src COPY backend/go.mod backend/go.sum ./ RUN go mod download COPY backend/ . RUN CGO_ENABLED=0 go build -o /skeps-backend . FROM alpine:3.20 WORKDIR /app COPY --from=backend /skeps-backend ./skeps-backend COPY --from=frontend /src/dist ./dist ENV STATIC_DIR=/app/dist EXPOSE 8080 ENTRYPOINT ["/app/skeps-backend"]