初始化
This commit is contained in:
164
deploy/manage.sh
Normal file
164
deploy/manage.sh
Normal file
@@ -0,0 +1,164 @@
|
||||
#!/bin/bash
|
||||
# WPS Bot Game 服务管理脚本
|
||||
|
||||
SERVICE_NAME="wps-bot"
|
||||
|
||||
# 颜色定义
|
||||
RED='\033[0;31m'
|
||||
GREEN='\033[0;32m'
|
||||
YELLOW='\033[1;33m'
|
||||
NC='\033[0m' # No Color
|
||||
|
||||
# 显示帮助信息
|
||||
show_help() {
|
||||
echo "WPS Bot Game 服务管理工具"
|
||||
echo ""
|
||||
echo "用法: $0 {start|stop|restart|status|logs|enable|disable|update}"
|
||||
echo ""
|
||||
echo "命令说明:"
|
||||
echo " start - 启动服务"
|
||||
echo " stop - 停止服务"
|
||||
echo " restart - 重启服务"
|
||||
echo " status - 查看服务状态"
|
||||
echo " logs - 查看实时日志"
|
||||
echo " enable - 启用开机自启"
|
||||
echo " disable - 禁用开机自启"
|
||||
echo " update - 更新代码并重启"
|
||||
echo ""
|
||||
}
|
||||
|
||||
# 启动服务
|
||||
start_service() {
|
||||
echo -e "${YELLOW}正在启动服务...${NC}"
|
||||
sudo systemctl start ${SERVICE_NAME}
|
||||
if [ $? -eq 0 ]; then
|
||||
echo -e "${GREEN}✅ 服务启动成功${NC}"
|
||||
sleep 2
|
||||
sudo systemctl status ${SERVICE_NAME} --no-pager
|
||||
else
|
||||
echo -e "${RED}❌ 服务启动失败${NC}"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
# 停止服务
|
||||
stop_service() {
|
||||
echo -e "${YELLOW}正在停止服务...${NC}"
|
||||
sudo systemctl stop ${SERVICE_NAME}
|
||||
if [ $? -eq 0 ]; then
|
||||
echo -e "${GREEN}✅ 服务已停止${NC}"
|
||||
else
|
||||
echo -e "${RED}❌ 服务停止失败${NC}"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
# 重启服务
|
||||
restart_service() {
|
||||
echo -e "${YELLOW}正在重启服务...${NC}"
|
||||
sudo systemctl restart ${SERVICE_NAME}
|
||||
if [ $? -eq 0 ]; then
|
||||
echo -e "${GREEN}✅ 服务重启成功${NC}"
|
||||
sleep 2
|
||||
sudo systemctl status ${SERVICE_NAME} --no-pager
|
||||
else
|
||||
echo -e "${RED}❌ 服务重启失败${NC}"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
# 查看状态
|
||||
show_status() {
|
||||
sudo systemctl status ${SERVICE_NAME}
|
||||
}
|
||||
|
||||
# 查看日志
|
||||
show_logs() {
|
||||
echo -e "${YELLOW}实时日志(按Ctrl+C退出):${NC}"
|
||||
sudo journalctl -u ${SERVICE_NAME} -f
|
||||
}
|
||||
|
||||
# 启用开机自启
|
||||
enable_service() {
|
||||
echo -e "${YELLOW}启用开机自启...${NC}"
|
||||
sudo systemctl enable ${SERVICE_NAME}
|
||||
if [ $? -eq 0 ]; then
|
||||
echo -e "${GREEN}✅ 已启用开机自启${NC}"
|
||||
else
|
||||
echo -e "${RED}❌ 启用失败${NC}"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
# 禁用开机自启
|
||||
disable_service() {
|
||||
echo -e "${YELLOW}禁用开机自启...${NC}"
|
||||
sudo systemctl disable ${SERVICE_NAME}
|
||||
if [ $? -eq 0 ]; then
|
||||
echo -e "${GREEN}✅ 已禁用开机自启${NC}"
|
||||
else
|
||||
echo -e "${RED}❌ 禁用失败${NC}"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
# 更新代码
|
||||
update_service() {
|
||||
echo -e "${YELLOW}正在更新代码...${NC}"
|
||||
|
||||
# 停止服务
|
||||
stop_service
|
||||
|
||||
# 进入项目目录
|
||||
cd /opt/wps-bot
|
||||
|
||||
# 拉取最新代码(如果使用git)
|
||||
if [ -d ".git" ]; then
|
||||
echo -e "${YELLOW}从Git拉取最新代码...${NC}"
|
||||
sudo -u ubuntu git pull
|
||||
fi
|
||||
|
||||
# 更新依赖
|
||||
echo -e "${YELLOW}更新依赖...${NC}"
|
||||
sudo -u ubuntu /home/ubuntu/miniconda3/envs/liubai/bin/pip install -r requirements.txt
|
||||
|
||||
# 重启服务
|
||||
start_service
|
||||
|
||||
echo -e "${GREEN}✅ 更新完成${NC}"
|
||||
}
|
||||
|
||||
# 主逻辑
|
||||
case "$1" in
|
||||
start)
|
||||
start_service
|
||||
;;
|
||||
stop)
|
||||
stop_service
|
||||
;;
|
||||
restart)
|
||||
restart_service
|
||||
;;
|
||||
status)
|
||||
show_status
|
||||
;;
|
||||
logs)
|
||||
show_logs
|
||||
;;
|
||||
enable)
|
||||
enable_service
|
||||
;;
|
||||
disable)
|
||||
disable_service
|
||||
;;
|
||||
update)
|
||||
update_service
|
||||
;;
|
||||
*)
|
||||
show_help
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
exit 0
|
||||
|
||||
Reference in New Issue
Block a user