build(Dockerfile): 添加多平台构建支持并禁用CGO
添加TARGETOS、TARGETARCH和TARGETVARIANT构建参数以支持多平台构建 设置CGO_ENABLED=0以静态编译 优化构建命令以支持不同架构变体
This commit is contained in:
parent
396346db8b
commit
22e9d09c39
|
|
@ -1,10 +1,13 @@
|
||||||
FROM golang:1.21-alpine AS build
|
FROM golang:1.21-alpine AS build
|
||||||
|
ARG TARGETOS=linux
|
||||||
|
ARG TARGETARCH=amd64
|
||||||
|
ARG TARGETVARIANT=""
|
||||||
|
ENV CGO_ENABLED=0
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
RUN --mount=type=cache,target=/var/cache/apk apk add build-base
|
|
||||||
COPY server/ ./server/
|
COPY server/ ./server/
|
||||||
COPY web/ ./web/
|
COPY web/ ./web/
|
||||||
WORKDIR /app/server
|
WORKDIR /app/server
|
||||||
RUN go build -o /app/bin/marketing-data-server ./cmd/server
|
RUN GOOS=$TARGETOS GOARCH=$TARGETARCH GOARM=$(echo $TARGETVARIANT | sed 's/^v//') go build -o /app/bin/marketing-data-server ./cmd/server
|
||||||
|
|
||||||
FROM alpine:3.19
|
FROM alpine:3.19
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue