This commit is contained in:
@@ -23,21 +23,24 @@ jobs:
|
|||||||
exit 1
|
exit 1
|
||||||
}
|
}
|
||||||
|
|
||||||
# 2. 停止并移除 Docker 容器
|
# 2. 停止并移除 Docker 容器及镜像
|
||||||
echo -e "\n===== 停止 Docker 容器 ====="
|
echo -e "\n===== 停止并清理 Docker ====="
|
||||||
echo $SUDO_PASSWORD | sudo -S docker compose down
|
# 合并停止容器和删除镜像的操作,避免重复执行导致"already in progress"错误
|
||||||
|
|
||||||
# 3. 删除 Docker 镜像
|
|
||||||
echo -e "\n===== 删除 Docker 镜像 ====="
|
|
||||||
echo $SUDO_PASSWORD | sudo -S docker compose down --rmi all
|
echo $SUDO_PASSWORD | sudo -S docker compose down --rmi all
|
||||||
|
|
||||||
# 4. 拉取 Git 最新代码
|
# 3. 拉取 Git 最新代码
|
||||||
echo -e "\n===== 拉取 Git 代码 ====="
|
echo -e "\n===== 拉取 Git 代码 ====="
|
||||||
git pull || {
|
# 尝试拉取,如果失败则强制重置,增强鲁棒性
|
||||||
echo "警告:Git pull 失败(可能是本地有未提交的修改),脚本继续执行..."
|
if ! git pull; then
|
||||||
}
|
echo "警告:Git pull 失败,尝试强制同步远程代码..."
|
||||||
|
git fetch --all
|
||||||
|
# 获取当前分支名并重置
|
||||||
|
CURRENT_BRANCH=$(git rev-parse --abbrev-ref HEAD)
|
||||||
|
git reset --hard origin/$CURRENT_BRANCH
|
||||||
|
git pull
|
||||||
|
fi
|
||||||
|
|
||||||
# 5. 重新启动 Docker 容器
|
# 4. 重新启动 Docker 容器
|
||||||
echo -e "\n===== 启动 Docker 容器 ====="
|
echo -e "\n===== 启动 Docker 容器 ====="
|
||||||
echo $SUDO_PASSWORD | sudo -S docker compose up -d
|
echo $SUDO_PASSWORD | sudo -S docker compose up -d
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user