Merge pull request 'fix: 精简 deploy.yml,checkout + ref + verify 三步确保拉取正确分支' (#146) from fix/actions into develop

Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/146
This commit was merged in pull request #146.
This commit is contained in:
2026-06-20 17:50:08 +08:00
3 changed files with 24 additions and 5 deletions

View File

@@ -13,6 +13,11 @@ jobs:
with: with:
ref: ${{ github.ref }} ref: ${{ github.ref }}
- name: Verify checkout
run: |
echo "触发分支: ${GITHUB_REF_NAME}"
echo "当前 HEAD: $(git log -1 --oneline)"
- name: Install Docker CLI - name: Install Docker CLI
run: apk add --no-cache docker-cli docker-cli-compose rsync run: apk add --no-cache docker-cli docker-cli-compose rsync

View File

@@ -8,11 +8,19 @@ ENV GOPROXY=https://goproxy.cn,https://goproxy.io,direct
# 先复制依赖清单,利用 Docker 缓存层 # 先复制依赖清单,利用 Docker 缓存层
COPY go.mod go.sum ./ COPY go.mod go.sum ./
RUN go mod download
# --mount=type=cache 复用 Go module 缓存,依赖不变时跳过下载
RUN --mount=type=cache,target=/go/pkg/mod \
go mod download
# 复制源码并构建 # 复制源码并构建
COPY . . COPY . .
RUN CGO_ENABLED=0 GOOS=linux go build -o /camtalk ./cmd/server
# 复用 module 缓存 + 编译缓存;-ldflags="-s -w" 裁剪符号表减小 ~30% 体积
RUN --mount=type=cache,target=/go/pkg/mod \
--mount=type=cache,target=/root/.cache/go-build \
CGO_ENABLED=0 GOOS=linux \
go build -ldflags="-s -w" -o /camtalk ./cmd/server
# ---- 运行阶段 ---- # ---- 运行阶段 ----
FROM alpine:3.20 FROM alpine:3.20

View File

@@ -8,11 +8,17 @@ RUN npm config set registry https://registry.npmmirror.com
# 先复制依赖清单,利用 Docker 缓存层 # 先复制依赖清单,利用 Docker 缓存层
COPY package.json package-lock.json ./ COPY package.json package-lock.json ./
RUN npm ci
# 复制源码并构建 # --mount=type=cache 复用 npm 缓存,依赖不变时跳过下载
# --no-audit 跳过安全审计,提速明显
RUN --mount=type=cache,target=/root/.npm \
npm ci --no-audit
# 复制源码并构建Vite 构建缓存也复用)
COPY . . COPY . .
RUN npm run build RUN --mount=type=cache,target=/root/.npm \
--mount=type=cache,target=/app/node_modules/.vite \
npm run build
# ---- 运行阶段 ---- # ---- 运行阶段 ----
FROM nginx:stable-alpine FROM nginx:stable-alpine