diff --git a/.gitea/workflows/main.yml b/.gitea/workflows/main.yml index 54a0690..a6416da 100644 --- a/.gitea/workflows/main.yml +++ b/.gitea/workflows/main.yml @@ -13,7 +13,6 @@ jobs: - name: Checkout code uses: https://gitee.com/zsqai/checkout@v4 - # 准备环境变量文件:将 .env.production 复制为 .env - name: Prepare .env file for production run: cp .env.production .env @@ -42,7 +41,7 @@ jobs: needs: build-and-push environment: name: production - url: http://${{ vars.HOST }} + url: http://${{ vars.HOST }}:8080 steps: - name: Deploy via SSH uses: https://gitee.com/zsqai/ssh-action@v1.0.3 @@ -64,16 +63,23 @@ jobs: # 拉取最新镜像 docker pull ${{ vars.ALIYUN_REGISTRY }}/${{ vars.ALIYUN_NAMESPACE }}/${{ vars.ALIYUN_REPO }}:latest + # 确保 Docker 网络存在 + docker network inspect web-network >/dev/null 2>&1 || docker network create web-network + # 停止并删除旧容器 docker stop web-01-api 2>/dev/null || true docker rm web-01-api 2>/dev/null || true - # 启动新容器(不再需要 -e 参数,因为环境变量已打包在镜像内) + # 启动新容器(不映射端口到宿主机) docker run -d \ --name web-01-api \ --restart always \ + --network web-network \ ${{ vars.ALIYUN_REGISTRY }}/${{ vars.ALIYUN_NAMESPACE }}/${{ vars.ALIYUN_REPO }}:latest + # 将 NPM 容器连接到同一网络(如果还没连接) + docker network connect web-network nginx-proxy-manager 2>/dev/null || true + # 清理旧镜像 docker image prune -f