diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index e90aa8d..73931ec 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -23,7 +23,8 @@ jobs: - name: 设置Go环境 uses: actions/setup-go@v5 with: - go-version: '1.25' + go-version-file: "src/go.mod" + cache-dependency-path: "src/go.sum" - name: 获取版本号 id: version @@ -53,6 +54,11 @@ jobs: run: | mkdir -p build/hubproxy + - name: 安装 UPX + uses: crazy-max/ghaction-upx@v3 + with: + install-only: true + - name: 编译二进制文件 run: | cd src @@ -63,6 +69,10 @@ jobs: # Linux ARM64 CGO_ENABLED=0 GOOS=linux GOARCH=arm64 go build -ldflags="-s -w" -o ../build/hubproxy/hubproxy-linux-arm64 . + # 压缩二进制文件 + upx -9 ../build/hubproxy/hubproxy-linux-amd64 + upx -9 ../build/hubproxy/hubproxy-linux-arm64 + - name: 复制配置文件 run: | # 复制配置文件 diff --git a/Dockerfile b/Dockerfile index ae7da99..e4f248e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -4,11 +4,11 @@ ARG TARGETARCH WORKDIR /app COPY src/go.mod src/go.sum ./ -RUN go mod download +RUN go mod download && apk add upx COPY src/ . -RUN CGO_ENABLED=0 GOOS=linux GOARCH=${TARGETARCH} go build -ldflags="-s -w" -trimpath -o hubproxy . +RUN CGO_ENABLED=0 GOOS=linux GOARCH=${TARGETARCH} go build -ldflags="-s -w" -trimpath -o hubproxy . && upx -9 hubproxy FROM alpine