-
Notifications
You must be signed in to change notification settings - Fork 269
Expand file tree
/
Copy pathDockerfile.manager-server
More file actions
29 lines (27 loc) · 980 Bytes
/
Copy pathDockerfile.manager-server
File metadata and controls
29 lines (27 loc) · 980 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
FROM --platform=$BUILDPLATFORM node:22-alpine AS web-build
ARG VERSION=dev
WORKDIR /app
COPY package*.json ./
COPY apps/web/package.json ./apps/web/package.json
RUN npm ci
COPY apps/web ./apps/web
WORKDIR /app/apps/web
RUN VERSION=$VERSION npm run build
FROM --platform=$BUILDPLATFORM golang:1.24-alpine AS service-build
ARG TARGETOS
ARG TARGETARCH
WORKDIR /src
COPY apps/manager-server ./apps/manager-server
COPY --from=web-build /app/apps/web/dist/index.html ./apps/manager-server/internal/httpapi/web/management.html
WORKDIR /src/apps/manager-server
RUN go mod download
RUN CGO_ENABLED=0 GOOS=$TARGETOS GOARCH=$TARGETARCH go build -o /out/cpa-manager-plus ./cmd/cpa-manager-plus
FROM alpine:3.21
RUN apk add --no-cache ca-certificates wget tzdata
WORKDIR /app
COPY --from=service-build /out/cpa-manager-plus /usr/local/bin/cpa-manager-plus
ENV HTTP_ADDR=0.0.0.0:18317
ENV USAGE_DATA_DIR=/data
ENV USAGE_DB_PATH=/data/usage.sqlite
EXPOSE 18317
ENTRYPOINT ["cpa-manager-plus"]