20 lines
428 B
Text
20 lines
428 B
Text
|
|
FROM node:22-alpine AS frontend
|
||
|
|
WORKDIR /app/frontend
|
||
|
|
COPY frontend/package*.json ./
|
||
|
|
RUN npm ci
|
||
|
|
COPY frontend/ ./
|
||
|
|
RUN npm run build
|
||
|
|
|
||
|
|
FROM golang:1.24-alpine AS backend
|
||
|
|
WORKDIR /app
|
||
|
|
COPY go.mod go.sum ./
|
||
|
|
RUN go mod download
|
||
|
|
COPY --from=frontend /app/frontend/dist ./frontend/dist
|
||
|
|
COPY *.go ./
|
||
|
|
RUN CGO_ENABLED=0 go build -o turnpike .
|
||
|
|
|
||
|
|
FROM scratch
|
||
|
|
COPY --from=backend /app/turnpike /turnpike
|
||
|
|
EXPOSE 8180
|
||
|
|
ENTRYPOINT ["/turnpike"]
|