This commit is contained in:
@@ -23,21 +23,24 @@ jobs:
|
||||
exit 1
|
||||
}
|
||||
|
||||
# 2. 停止并移除 Docker 容器
|
||||
echo -e "\n===== 停止 Docker 容器 ====="
|
||||
echo $SUDO_PASSWORD | sudo -S docker compose down
|
||||
|
||||
# 3. 删除 Docker 镜像
|
||||
echo -e "\n===== 删除 Docker 镜像 ====="
|
||||
# 2. 停止并移除 Docker 容器及镜像
|
||||
echo -e "\n===== 停止并清理 Docker ====="
|
||||
# 合并停止容器和删除镜像的操作,避免重复执行导致"already in progress"错误
|
||||
echo $SUDO_PASSWORD | sudo -S docker compose down --rmi all
|
||||
|
||||
# 4. 拉取 Git 最新代码
|
||||
# 3. 拉取 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 $SUDO_PASSWORD | sudo -S docker compose up -d
|
||||
|
||||
|
||||
Reference in New Issue
Block a user