diff --git a/.gitea/workflows/server-build.yml b/.gitea/workflows/server-build.yml index 6fd9dd4..467f3d2 100644 --- a/.gitea/workflows/server-build.yml +++ b/.gitea/workflows/server-build.yml @@ -7,6 +7,12 @@ on: jobs: build-and-push: runs-on: ubuntu-latest + env: + # 可选:在仓库 Secrets 中配置这些值(更方便在不同环境复用) + # - DOCKER_REGISTRY: 例如 docker.damer.fun(自建 registry 域名) + # - DOCKER_IMAGE_REPO: 例如 damer/mindfulness-server(不含 registry) + DOCKER_REGISTRY: ${{ secrets.DOCKER_REGISTRY }} + DOCKER_IMAGE_REPO: ${{ secrets.DOCKER_IMAGE_REPO }} steps: # 1️⃣ Checkout 仓库代码 @@ -78,7 +84,7 @@ jobs: # 镜像仓库路径(不含 registry) IMAGE_REPO="${DOCKER_IMAGE_REPO:-damer/mindfulness-server}" - if [[ -n "$REGISTRY" ]]; then + if [[ -n "$REGISTRY" && "$REGISTRY" != "docker.io" ]]; then IMAGE_NAME="$REGISTRY/$IMAGE_REPO" else IMAGE_NAME="$IMAGE_REPO" @@ -95,11 +101,12 @@ jobs: echo "IMAGE_NAME=$IMAGE_NAME" >> "$GITEA_ENV" fi - # 4️⃣ 登录镜像仓库(自建 Registry) + # 4️⃣ 登录镜像仓库(自建 Registry / Docker Hub) - name: Login to Docker Registry uses: docker/login-action@v3 with: - registry: docker.damer.fun + # 必须与 IMAGE_NAME 的 registry 部分一致,否则 push 会 401 + registry: ${{ env.REGISTRY }} username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_TOKEN }}