From 71b33b815d230847ede4fdc5a4e4515a3e12c10c Mon Sep 17 00:00:00 2001 From: lhx Date: Thu, 30 Oct 2025 14:55:38 +0800 Subject: [PATCH] =?UTF-8?q?=E8=84=9A=E6=9C=AC=E8=BF=90=E8=A1=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- deploy.sh | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 deploy.sh diff --git a/deploy.sh b/deploy.sh new file mode 100644 index 0000000..a9ec8f2 --- /dev/null +++ b/deploy.sh @@ -0,0 +1,48 @@ +#!/bin/bash + +# 服务部署脚本 +# 用于停止旧服务并启动新服务 + +echo "=== 服务部署脚本 ===" +echo "此脚本将停止当前服务并重新启动服务" +echo "" + +# 读取sudo密码 +echo -n "请输入sudo密码: " +read -s SUDO_PASSWORD +echo "" +echo "" + +# 检查密码是否为空 +if [ -z "$SUDO_PASSWORD" ]; then + echo "错误: 密码不能为空" + exit 1 +fi + +echo "正在停止当前服务..." +# 使用expect或者直接传递密码给sudo +echo "$SUDO_PASSWORD" | sudo -S docker compose down --rmi all + +if [ $? -eq 0 ]; then + echo "✓ 服务已成功停止" +else + echo "✗ 停止服务失败,请检查密码是否正确" + exit 1 +fi + +echo "" +echo "正在启动新服务..." +echo "$SUDO_PASSWORD" | sudo -S docker compose up -d + +if [ $? -eq 0 ]; then + echo "✓ 服务启动成功" + echo "" + echo "服务状态:" + echo "$SUDO_PASSWORD" | sudo -S docker compose ps +else + echo "✗ 启动服务失败" + exit 1 +fi + +echo "" +echo "=== 部署完成 ===" \ No newline at end of file