Add Docker build multi-platform support
This commit is contained in:
parent
0a20cda5f7
commit
d17090409e
|
@ -38,10 +38,9 @@ jobs:
|
|||
username: ${{ secrets.ALIYUN_USERNAME }}
|
||||
password: ${{ secrets.ALIYUN_PASSWORD }}
|
||||
|
||||
- name: Build and push
|
||||
- name: Build and push multi-arch image
|
||||
run: |
|
||||
docker build -t ${{env.REGISTRY}}/${{env.IMAGE_NAME}}:${{env.IMAGE_TAG}} .
|
||||
docker push ${{env.REGISTRY}}/${{env.IMAGE_NAME}}:${{env.IMAGE_TAG}}
|
||||
docker buildx build --platform linux/amd64,linux/arm64 -t ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ env.IMAGE_TAG }} --push .
|
||||
|
||||
- name: Set up SSH key
|
||||
run: |
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
FROM golang:1.22.4-alpine3.20 AS builder
|
||||
FROM --platform=$BUILDPLATFORM golang:1.22.4-alpine3.20 AS builder
|
||||
|
||||
WORKDIR /app
|
||||
COPY . .
|
||||
|
@ -6,7 +6,8 @@ COPY . .
|
|||
ENV GO111MODULE=on GOPROXY=https://goproxy.cn,direct
|
||||
RUN go mod download
|
||||
|
||||
RUN CGO_ENABLED=0 go build -ldflags="-w -s" -o pcm-core-api
|
||||
# 使用 GOOS 和 GOARCH 环境变量来构建不同架构的二进制文件
|
||||
RUN CGO_ENABLED=0 GOOS=$TARGETOS GOARCH=$TARGETARCH go build -ldflags="-w -s" -o pcm-core-api
|
||||
|
||||
|
||||
FROM alpine:latest
|
||||
|
|
Loading…
Reference in New Issue