Compare commits

...

19 Commits

Author SHA1 Message Date
20a80982fe 固定 Alpine 版本为 3.19 以解决包兼容性问题
Some checks failed
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 3h9m41s
2026-01-19 17:42:41 +08:00
5be74f2698 修正编译命令:编译整个目录而不是单个文件
Some checks failed
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 13m37s
2026-01-19 17:26:43 +08:00
bb9f0a3a1f 修正 .dockerignore 确保包含 docs.go 文件
Some checks failed
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 1m44s
2026-01-19 17:24:03 +08:00
d1a2af3b6d 注释掉未实现的 OpenAPI 文档生成
Some checks failed
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Has been cancelled
2026-01-19 17:23:13 +08:00
08736d2692 更新到 Go 1.25.6
Some checks failed
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 4m30s
2026-01-19 17:17:27 +08:00
919d4350d0 在所有 Go 命令中设置 GOTOOLCHAIN=auto
Some checks failed
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 4s
2026-01-19 17:14:12 +08:00
109c9f014b 设置 GOTOOLCHAIN=auto 支持自动工具链管理
Some checks failed
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 56s
2026-01-19 17:11:36 +08:00
627ca54c65 添加国内 Go 代理加速依赖下载
Some checks failed
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 4s
2026-01-19 17:08:39 +08:00
4d5cdc0d16 修正 Go 版本号为 1.23
Some checks failed
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Has been cancelled
2026-01-19 16:56:30 +08:00
35a1000c18 使用 docker compose 替代 docker-compose 命令
Some checks failed
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 13m2s
2026-01-19 16:31:13 +08:00
427d7ef9cd 测试自定义镜像 Runner
Some checks failed
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 15s
2026-01-19 16:25:06 +08:00
fe0e98df69 回到容器模式使用自定义镜像
Some checks failed
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 0s
2026-01-19 16:24:11 +08:00
dd8d802279 使用原生 git 命令替代 actions/checkout
Some checks failed
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 0s
2026-01-19 16:22:45 +08:00
8e17b97481 测试修复后的宿主机 Runner
Some checks failed
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 2s
2026-01-19 16:21:47 +08:00
9e2d87acb6 测试宿主机模式 Runner
Some checks failed
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Has been cancelled
2026-01-19 16:18:29 +08:00
b3450bd58a 触发工作流测试
Some checks failed
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 2m47s
2026-01-19 16:11:59 +08:00
9e67914b1b 修正 Docker login 命令格式
Some checks failed
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 4s
2026-01-19 16:07:57 +08:00
a996c604dd 使用宿主机 Act Runner 直接执行部署
Some checks failed
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 1m21s
2026-01-19 16:05:25 +08:00
38a9a81bae 使用 docker 标签并指定容器镜像
Some checks failed
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 15s
2026-01-19 15:04:52 +08:00
4 changed files with 23 additions and 13 deletions

View File

@@ -15,11 +15,13 @@ env:
jobs: jobs:
build-and-deploy: build-and-deploy:
runs-on: docker runs-on: ubuntu-latest
steps: steps:
- name: 检出代码 - name: 检出代码
uses: actions/checkout@v4 run: |
git clone https://git.boss160.cn/csxj2026/junhong_cmp_fiber.git .
git checkout ${{ github.sha }}
- name: 设置镜像标签 - name: 设置镜像标签
id: tag id: tag
@@ -36,7 +38,7 @@ jobs:
- name: 登录 Docker Registry - name: 登录 Docker Registry
run: | run: |
echo "${{ secrets.REGISTRY_PASSWORD }}" | docker login ${{ env.REGISTRY }} -u ${{ secrets.REGISTRY_USERNAME }} --password-stdin echo "${{ secrets.REGISTRY_PASSWORD }}" | docker login "${{ env.REGISTRY }}" --username "${{ secrets.REGISTRY_USERNAME }}" --password-stdin
- name: 构建 API 镜像 - name: 构建 API 镜像
run: | run: |
@@ -61,10 +63,10 @@ jobs:
cd ${{ env.DEPLOY_DIR }} cd ${{ env.DEPLOY_DIR }}
echo "拉取最新镜像..." echo "拉取最新镜像..."
docker-compose -f docker-compose.prod.yml pull docker compose -f docker-compose.prod.yml pull
echo "执行滚动更新..." echo "执行滚动更新..."
docker-compose -f docker-compose.prod.yml up -d --no-deps docker compose -f docker-compose.prod.yml up -d --no-deps
echo "等待服务健康检查..." echo "等待服务健康检查..."
sleep 10 sleep 10
@@ -77,7 +79,7 @@ jobs:
docker image prune -f docker image prune -f
echo "部署完成!" echo "部署完成!"
docker-compose -f docker-compose.prod.yml ps docker compose -f docker-compose.prod.yml ps
- name: 构建结果通知 - name: 构建结果通知
if: always() if: always()

View File

@@ -1,7 +1,7 @@
# ================================ # ================================
# 阶段 1: 构建阶段 # 阶段 1: 构建阶段
# ================================ # ================================
FROM golang:1.23.4-alpine AS builder FROM golang:1.25.6-alpine AS builder
# 设置工作目录 # 设置工作目录
WORKDIR /build WORKDIR /build
@@ -11,6 +11,10 @@ RUN apk add --no-cache git ca-certificates tzdata
# 复制 go.mod 和 go.sum利用 Docker 缓存) # 复制 go.mod 和 go.sum利用 Docker 缓存)
COPY go.mod go.sum ./ COPY go.mod go.sum ./
# 使用国内 Go 代理加速依赖下载
ENV GOPROXY=https://goproxy.cn,direct
RUN go mod download RUN go mod download
# 复制源代码 # 复制源代码
@@ -20,7 +24,7 @@ COPY . .
RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build \ RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build \
-ldflags="-w -s" \ -ldflags="-w -s" \
-o /build/api \ -o /build/api \
cmd/api/main.go ./cmd/api
# 下载 golang-migrate 工具 # 下载 golang-migrate 工具
RUN go install -tags 'postgres' github.com/golang-migrate/migrate/v4/cmd/migrate@latest RUN go install -tags 'postgres' github.com/golang-migrate/migrate/v4/cmd/migrate@latest
@@ -28,7 +32,7 @@ RUN go install -tags 'postgres' github.com/golang-migrate/migrate/v4/cmd/migrate
# ================================ # ================================
# 阶段 2: 运行阶段 # 阶段 2: 运行阶段
# ================================ # ================================
FROM alpine:latest FROM alpine:3.19
# 安装运行时依赖 # 安装运行时依赖
RUN apk add --no-cache ca-certificates tzdata bash curl RUN apk add --no-cache ca-certificates tzdata bash curl

View File

@@ -1,7 +1,7 @@
# ================================ # ================================
# 阶段 1: 构建阶段 # 阶段 1: 构建阶段
# ================================ # ================================
FROM golang:1.23.4-alpine AS builder FROM golang:1.25.6-alpine AS builder
# 设置工作目录 # 设置工作目录
WORKDIR /build WORKDIR /build
@@ -11,6 +11,10 @@ RUN apk add --no-cache git ca-certificates tzdata
# 复制 go.mod 和 go.sum利用 Docker 缓存) # 复制 go.mod 和 go.sum利用 Docker 缓存)
COPY go.mod go.sum ./ COPY go.mod go.sum ./
# 使用国内 Go 代理加速依赖下载
ENV GOPROXY=https://goproxy.cn,direct
RUN go mod download RUN go mod download
# 复制源代码 # 复制源代码
@@ -20,12 +24,12 @@ COPY . .
RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build \ RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build \
-ldflags="-w -s" \ -ldflags="-w -s" \
-o /build/worker \ -o /build/worker \
cmd/worker/main.go ./cmd/worker
# ================================ # ================================
# 阶段 2: 运行阶段 # 阶段 2: 运行阶段
# ================================ # ================================
FROM alpine:latest FROM alpine:3.19
# 安装运行时依赖 # 安装运行时依赖
RUN apk add --no-cache ca-certificates tzdata bash RUN apk add --no-cache ca-certificates tzdata bash

2
go.mod
View File

@@ -1,6 +1,6 @@
module github.com/break/junhong_cmp_fiber module github.com/break/junhong_cmp_fiber
go 1.25.4 go 1.25
require ( require (
github.com/bytedance/sonic v1.14.2 github.com/bytedance/sonic v1.14.2