diff --git a/.github/DOCKER_DEPLOYMENT.md b/.github/DOCKER_DEPLOYMENT.md index 4e2f9b2..699beb6 100644 --- a/.github/DOCKER_DEPLOYMENT.md +++ b/.github/DOCKER_DEPLOYMENT.md @@ -180,7 +180,39 @@ Error: failed to authorize: failed to fetch anonymous token 3. 确保 Token 权限包含 `Read, Write, Delete` 4. 重新生成 Token 并更新 Secret -### 问题 2: 推送失败 (权限问题) +### 问题 2: Docker Hub 描述更新失败 (Forbidden) + +**错误信息**: +``` +Error: Forbidden +Run peter-evans/dockerhub-description@v4 +``` + +**原因**: +- Docker Hub Access Token 权限不足 +- 该步骤用于自动同步 README 到 Docker Hub + +**解决方案**: + +**方案 A: 禁用自动更新描述(推荐)** +- 工作流已自动注释该步骤 +- 镜像构建和发布不受影响 +- 手动在 Docker Hub 更新仓库描述即可 + +**方案 B: 启用自动更新描述** +1. 重新生成 Docker Hub Access Token +2. 确保权限为 `Read, Write & Delete` +3. 更新 GitHub Secret `DOCKERHUB_TOKEN` +4. 取消工作流文件中的注释 + +**手动更新 Docker Hub 描述**: +1. 登录 https://hub.docker.com/ +2. 进入你的仓库 `evil0ctal/wechat-decrypt-api` +3. 点击 "Description" 标签 +4. 将 `api-service/README.md` 的内容复制粘贴 +5. 点击 "Update" 保存 + +### 问题 3: 推送失败 (权限问题) **错误信息**: ``` diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index bee2d36..14b89c6 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -71,11 +71,13 @@ jobs: cache-from: type=gha cache-to: type=gha,mode=max - - name: Docker Hub Description - if: github.event_name != 'pull_request' && github.ref == 'refs/heads/main' - uses: peter-evans/dockerhub-description@v4 - with: - username: ${{ secrets.DOCKERHUB_USERNAME }} - password: ${{ secrets.DOCKERHUB_TOKEN }} - repository: ${{ env.IMAGE_NAME }} - readme-filepath: ./api-service/README.md + # 注意: 如果需要自动更新 Docker Hub 描述,请确保 DOCKERHUB_TOKEN 具有 "Read, Write & Delete" 权限 + # 或者手动在 Docker Hub 上更新仓库描述 + # - name: Docker Hub Description + # if: github.event_name != 'pull_request' && github.ref == 'refs/heads/main' + # uses: peter-evans/dockerhub-description@v4 + # with: + # username: ${{ secrets.DOCKERHUB_USERNAME }} + # password: ${{ secrets.DOCKERHUB_TOKEN }} + # repository: ${{ env.IMAGE_NAME }} + # readme-filepath: ./api-service/README.md