forked from JointCloud/pcm-coordinator
ci/cd optimization
Signed-off-by: jagger <cossjie@foxmail.com>
This commit is contained in:
parent
44aca8bc0e
commit
b95b65aaf1
|
@ -43,14 +43,6 @@ jobs:
|
||||||
run: |
|
run: |
|
||||||
echo "::set-output name=build_time::$(date +'%Y%m%d%H%M%S')"
|
echo "::set-output name=build_time::$(date +'%Y%m%d%H%M%S')"
|
||||||
|
|
||||||
- name: Cache Go modules
|
|
||||||
uses: actions/cache@v3
|
|
||||||
with:
|
|
||||||
path: ~/go/pkg/mod
|
|
||||||
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
|
|
||||||
restore-keys: |
|
|
||||||
${{ runner.os }}-go-
|
|
||||||
|
|
||||||
- name: Build and push multi-arch image
|
- name: Build and push multi-arch image
|
||||||
run: |
|
run: |
|
||||||
docker buildx build \
|
docker buildx build \
|
||||||
|
|
10
Dockerfile
10
Dockerfile
|
@ -1,26 +1,20 @@
|
||||||
# 第一阶段:构建二进制文件
|
|
||||||
FROM --platform=$BUILDPLATFORM golang:alpine AS builder
|
FROM --platform=$BUILDPLATFORM golang:alpine AS builder
|
||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
COPY go.mod go.sum ./
|
COPY . .
|
||||||
|
|
||||||
# 缓存依赖项
|
|
||||||
ENV GO111MODULE=on GOPROXY=https://goproxy.cn,direct
|
ENV GO111MODULE=on GOPROXY=https://goproxy.cn,direct
|
||||||
RUN go mod download
|
RUN go mod download
|
||||||
|
|
||||||
COPY . .
|
|
||||||
|
|
||||||
ARG TARGETOS
|
ARG TARGETOS
|
||||||
ARG TARGETARCH
|
ARG TARGETARCH
|
||||||
|
|
||||||
# 使用 GOOS 和 GOARCH 环境变量来构建不同架构的二进制文件
|
# 使用 GOOS 和 GOARCH 环境变量来构建不同架构的二进制文件
|
||||||
RUN CGO_ENABLED=0 GOOS=$TARGETOS GOARCH=$TARGETARCH go build -ldflags="-w -s" -o pcm-core-api
|
RUN CGO_ENABLED=0 GOOS=$TARGETOS GOARCH=$TARGETARCH go build -ldflags="-w -s" -o pcm-core-api
|
||||||
|
|
||||||
# 第二阶段:构建最终镜像
|
|
||||||
FROM --platform=$TARGETPLATFORM alpine:latest
|
FROM --platform=$TARGETPLATFORM alpine:latest
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
# 修改alpine源为上海交通大学
|
#修改alpine源为上海交通大学
|
||||||
RUN apk add --no-cache ca-certificates && update-ca-certificates && \
|
RUN apk add --no-cache ca-certificates && update-ca-certificates && \
|
||||||
apk add --update tzdata && \
|
apk add --update tzdata && \
|
||||||
rm -rf /var/cache/apk/*
|
rm -rf /var/cache/apk/*
|
||||||
|
|
Loading…
Reference in New Issue