ci: 修 CNB docker build 上下文(by 必须列出 bin/linux/hugo)

首跑失败在镜像构建:
  COPY bin/linux/hugo /usr/local/bin/hugo
  ERROR: failed to compute cache key ... "bin/linux/hugo": not found

根因(CNB 官方文档原文):docker build 的构建上下文里「只包含 Dockerfile
和 by 声明的文件」,未出现在 by 列表中的文件在构建时一律视为不存在。
原配置 by:[package.json] 既漏了 hugo 二进制,又列了个 Dockerfile 根本
没 COPY 的 package.json。

改为 by: [bin/linux/hugo] / versionBy: [bin/linux/hugo]。
This commit is contained in:
zqlit committed 2026-10-04 13:07:31 +08:00
1 parent c68d60f34c
commit 9e972f2b61
1 file changed
+12 -4
+12 -4
View File
@@ -240,11 +240,15 @@ main:
- name: 构建并发布(境内外双线路) - name: 构建并发布(境内外双线路)
runner: runner:
cpus: 4 # 4 核 8G;160 核时/月 → 约 240 次 cpus: 4 # 4 核 8G;160 核时/月 → 约 240 次
# ★ CNB 的 docker build 上下文「只含 Dockerfile + by 列出的文件」,
# 未列入的一律视为不存在(官方原文)。Dockerfile 要 COPY bin/linux/hugo,
# 故必须写进 by。漏掉会报:
# failed to compute cache key ... "bin/linux/hugo": not found
docker: docker:
build: build:
dockerfile: deploy/Dockerfile dockerfile: deploy/Dockerfile
by: [package.json] by: [bin/linux/hugo]
versionBy: [package-lock.json] versionBy: [bin/linux/hugo]
imports: imports:
- https://cnb.cool/zqlit/blog-secrets/-/blob/main/secrets.yml - https://cnb.cool/zqlit/blog-secrets/-/blob/main/secrets.yml
lock: # 对应原 concurrency.cancel-in-progress lock: # 对应原 concurrency.cancel-in-progress
@@ -261,11 +265,15 @@ main:
- name: 定时构建(每天 09:00) - name: 定时构建(每天 09:00)
runner: runner:
cpus: 4 cpus: 4
# ★ CNB 的 docker build 上下文「只含 Dockerfile + by 列出的文件」,
# 未列入的一律视为不存在(官方原文)。Dockerfile 要 COPY bin/linux/hugo,
# 故必须写进 by。漏掉会报:
# failed to compute cache key ... "bin/linux/hugo": not found
docker: docker:
build: build:
dockerfile: deploy/Dockerfile dockerfile: deploy/Dockerfile
by: [package.json] by: [bin/linux/hugo]
versionBy: [package-lock.json] versionBy: [bin/linux/hugo]
imports: imports:
- https://cnb.cool/zqlit/blog-secrets/-/blob/main/secrets.yml - https://cnb.cool/zqlit/blog-secrets/-/blob/main/secrets.yml
lock: lock: