fix: 删除无效的nul文件
110
git_patch_deploy_v2.2.sh
Normal file
@@ -0,0 +1,110 @@
|
||||
#!/bin/bash
|
||||
# ZJPB v2.2 Git Patch 部署脚本
|
||||
# 在生产服务器上执行
|
||||
|
||||
echo "================================"
|
||||
echo "ZJPB v2.2 Git Patch 部署"
|
||||
echo "================================"
|
||||
echo ""
|
||||
|
||||
# 项目路径
|
||||
PROJECT_DIR="/opt/1panel/apps/zjpb"
|
||||
|
||||
# 检查是否在正确目录
|
||||
cd $PROJECT_DIR || { echo ">>> 项目目录不存在"; exit 1; }
|
||||
|
||||
echo "当前目录: $(pwd)"
|
||||
echo ""
|
||||
|
||||
# 停止应用
|
||||
echo "1. 停止应用..."
|
||||
./manage.sh stop
|
||||
sleep 2
|
||||
|
||||
# 检查Git状态
|
||||
echo "2. 检查Git状态..."
|
||||
git status
|
||||
|
||||
# 备份未提交的修改(如果有)
|
||||
echo "3. 备份当前修改(如有)..."
|
||||
if ! git diff-index --quiet HEAD --; then
|
||||
echo " 发现未提交的修改,正在保存..."
|
||||
git stash save "backup_before_v2.2_$(date +%Y%m%d_%H%M%S)"
|
||||
fi
|
||||
|
||||
# 应用patch
|
||||
echo "4. 应用v2.2.0补丁..."
|
||||
if [ -f "v2.2.0.patch" ]; then
|
||||
git apply --check v2.2.0.patch
|
||||
if [ $? -eq 0 ]; then
|
||||
git apply v2.2.0.patch
|
||||
echo " >>> 补丁应用成功"
|
||||
else
|
||||
echo " >>> 补丁应用失败,请检查"
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
echo " >>> v2.2.0.patch 文件不存在"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 提交更改
|
||||
echo "5. 提交更改到Git..."
|
||||
git add .
|
||||
git commit -m "release: v2.2.0 - 博查新闻搜索功能
|
||||
|
||||
通过patch部署,包含以下更新:
|
||||
- 集成博查Web Search API
|
||||
- 新闻自动获取和展示
|
||||
- 智能新闻更新机制(每日首次访问触发)
|
||||
- News模型扩展(source_name, source_icon)
|
||||
- 网站详情页新闻模块
|
||||
- 定期任务脚本和测试工具
|
||||
"
|
||||
|
||||
# 激活虚拟环境
|
||||
echo "6. 激活虚拟环境..."
|
||||
source venv/bin/activate
|
||||
|
||||
# 安装依赖(检查是否有新依赖)
|
||||
echo "7. 检查依赖..."
|
||||
pip install -r requirements.txt -q
|
||||
|
||||
# 运行数据库迁移
|
||||
echo "8. 运行数据库迁移..."
|
||||
if [ -f "migrate_news_fields.py" ]; then
|
||||
python migrate_news_fields.py
|
||||
if [ $? -eq 0 ]; then
|
||||
echo " >>> 数据库迁移成功"
|
||||
else
|
||||
echo " >>> 数据库迁移失败"
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
echo " >>> migrate_news_fields.py 不存在,跳过"
|
||||
fi
|
||||
|
||||
# 重启应用
|
||||
echo "9. 重启应用..."
|
||||
./manage.sh start
|
||||
sleep 3
|
||||
|
||||
# 检查状态
|
||||
echo "10. 检查应用状态..."
|
||||
./manage.sh status
|
||||
|
||||
echo ""
|
||||
echo "================================"
|
||||
echo ">>> 部署完成!"
|
||||
echo "================================"
|
||||
echo ""
|
||||
echo "Git提交历史:"
|
||||
git log --oneline -3
|
||||
echo ""
|
||||
echo "请访问网站验证更新是否成功"
|
||||
echo ""
|
||||
echo "验证清单:"
|
||||
echo "1. 访问任意网站详情页,检查是否显示相关新闻"
|
||||
echo "2. 登录后台 /admin/newsadmin/ 查看新闻管理"
|
||||
echo "3. 检查日志确认没有错误"
|
||||
echo ""
|
||||
61
manage.sh.backup
Normal file
@@ -0,0 +1,61 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ZJPB 应用管理脚本
|
||||
# 用法: ./manage.sh [start|stop|restart|status|logs]
|
||||
|
||||
APP_NAME="zjpb"
|
||||
APP_DIR="/www/wwwroot/zjpb"
|
||||
VENV_DIR="$APP_DIR/venv"
|
||||
PID_FILE="$APP_DIR/logs/gunicorn.pid"
|
||||
|
||||
cd $APP_DIR
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
echo "启动 $APP_NAME..."
|
||||
source $VENV_DIR/bin/activate
|
||||
gunicorn -c gunicorn_config.py app:app
|
||||
echo "$APP_NAME 已启动"
|
||||
;;
|
||||
|
||||
stop)
|
||||
echo "停止 $APP_NAME..."
|
||||
if [ -f $PID_FILE ]; then
|
||||
kill $(cat $PID_FILE)
|
||||
echo "$APP_NAME 已停止"
|
||||
else
|
||||
echo "PID文件不存在,可能未运行"
|
||||
fi
|
||||
;;
|
||||
|
||||
restart)
|
||||
$0 stop
|
||||
sleep 2
|
||||
$0 start
|
||||
;;
|
||||
|
||||
status)
|
||||
if [ -f $PID_FILE ]; then
|
||||
PID=$(cat $PID_FILE)
|
||||
if ps -p $PID > /dev/null; then
|
||||
echo "$APP_NAME 正在运行 (PID: $PID)"
|
||||
else
|
||||
echo "$APP_NAME 未运行(但PID文件存在)"
|
||||
fi
|
||||
else
|
||||
echo "$APP_NAME 未运行"
|
||||
fi
|
||||
;;
|
||||
|
||||
logs)
|
||||
echo "实时查看日志(Ctrl+C退出):"
|
||||
tail -f logs/error.log
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "用法: $0 {start|stop|restart|status|logs}"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
exit 0
|
||||
2
nul
@@ -1,2 +0,0 @@
|
||||
timeout: invalid time interval ‘/t’
|
||||
Try 'timeout --help' for more information.
|
||||
BIN
static/logos/logo_009330a33741511f.png
Normal file
|
After Width: | Height: | Size: 41 KiB |
BIN
static/logos/logo_086fa477815e5f48.png
Normal file
|
After Width: | Height: | Size: 214 KiB |
BIN
static/logos/logo_0bf9f5b40bc9f3d5.webp
Normal file
|
After Width: | Height: | Size: 4.8 KiB |
BIN
static/logos/logo_0caa6b734c44441e.png
Normal file
|
After Width: | Height: | Size: 1.9 KiB |
BIN
static/logos/logo_0cf405192ccd0146.jpeg
Normal file
|
After Width: | Height: | Size: 7.5 KiB |
BIN
static/logos/logo_10d6a2b3811ae398.png
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
static/logos/logo_1fbd5cd39812f9d0.png
Normal file
|
After Width: | Height: | Size: 63 KiB |
BIN
static/logos/logo_214e96cf96888084.jpg
Normal file
|
After Width: | Height: | Size: 32 KiB |
BIN
static/logos/logo_21a7f8ac8867d715.jpg
Normal file
|
After Width: | Height: | Size: 180 KiB |
BIN
static/logos/logo_21d770f54333c4b0.jpeg
Normal file
|
After Width: | Height: | Size: 2.5 KiB |
BIN
static/logos/logo_22160f2fb2ace263.png
Normal file
|
After Width: | Height: | Size: 1.9 KiB |
BIN
static/logos/logo_27849fad6920d06e.png
Normal file
|
After Width: | Height: | Size: 2.4 KiB |
BIN
static/logos/logo_2b995c80473172de.png
Normal file
|
After Width: | Height: | Size: 1.7 KiB |
BIN
static/logos/logo_2cb17cc73c6a4ea6.png
Normal file
|
After Width: | Height: | Size: 30 KiB |
BIN
static/logos/logo_2d1e980b35dbdb73.png
Normal file
|
After Width: | Height: | Size: 124 KiB |
BIN
static/logos/logo_31713449fe0e3279.jpg
Normal file
|
After Width: | Height: | Size: 7.2 KiB |
BIN
static/logos/logo_3cd0e2f01104da8f.webp
Normal file
|
After Width: | Height: | Size: 4.7 KiB |
BIN
static/logos/logo_3edad18a442b647c.jpeg
Normal file
|
After Width: | Height: | Size: 4.5 KiB |
BIN
static/logos/logo_4029804b6c1ec871.jpeg
Normal file
|
After Width: | Height: | Size: 5.9 KiB |
BIN
static/logos/logo_49f74f06f5892603.webp
Normal file
|
After Width: | Height: | Size: 1.8 KiB |
22
static/logos/logo_4b72862d2860be10.svg
Normal file
@@ -0,0 +1,22 @@
|
||||
<svg width="54" height="54" viewBox="0 0 54 54" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M32.9314 26.9511L21.7996 20.5242L32.4531 14.9257L42.8674 32.9639L32.4531 38.9766L32.9314 26.9511Z" fill="url(#paint0_linear_14267_83603)"/>
|
||||
<path d="M21.8015 20.5187L21.8015 33.3726L11.6264 26.9457L22.0407 8.90756L32.455 14.9203L21.8015 20.5187Z" fill="url(#paint1_linear_14267_83603)"/>
|
||||
<path d="M11.6249 26.9477L21.8 33.3747L27.3659 30.1612L32.9318 26.9477L32.4535 38.9731L11.6249 38.9731L11.6249 26.9477Z" fill="url(#paint2_linear_14267_83603)"/>
|
||||
<path d="M17.0052 5.99971C14.6088 4.61614 11.6133 6.34561 11.6133 9.11277L11.6133 26.9375L22.0276 8.89937L17.0052 5.99971Z" fill="#F4DBFF"/>
|
||||
<path d="M47.8817 30.0613C50.2782 28.6777 50.2782 25.2188 47.8817 23.8352L32.4451 14.9228L42.8594 32.9609L47.8817 30.0613Z" fill="#FFDBF6"/>
|
||||
<path d="M11.6164 44.7588C11.6164 47.526 14.6119 49.2555 17.0083 47.8719L32.445 38.9595L11.6164 38.9595L11.6164 44.7588Z" fill="#FFE9CD"/>
|
||||
<defs>
|
||||
<linearGradient id="paint0_linear_14267_83603" x1="38.2931" y1="34.987" x2="39.9981" y2="18.0469" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#7333F0"/>
|
||||
<stop offset="1" stop-color="#F034D0"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint1_linear_14267_83603" x1="26.9397" y1="11.8049" x2="11.9028" y2="25.1964" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#FF5753"/>
|
||||
<stop offset="1" stop-color="#FFA52D"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint2_linear_14267_83603" x1="11.3626" y1="33.824" x2="31.1696" y2="38.3227" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#FF5753"/>
|
||||
<stop offset="1" stop-color="#F034D0"/>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.6 KiB |
BIN
static/logos/logo_4ba98f6d485f7211.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
static/logos/logo_4d06dd582d659c7e.png
Normal file
|
After Width: | Height: | Size: 2.4 KiB |
BIN
static/logos/logo_50e7b9e722dd9bba.jpeg
Normal file
|
After Width: | Height: | Size: 3.8 KiB |
BIN
static/logos/logo_51eb0f62f4652d66.png
Normal file
|
After Width: | Height: | Size: 9.4 KiB |
BIN
static/logos/logo_54f298fb11566bf6.webp
Normal file
|
After Width: | Height: | Size: 4.2 KiB |
BIN
static/logos/logo_553f5b7d65fb33dd.jpeg
Normal file
|
After Width: | Height: | Size: 3.4 KiB |
BIN
static/logos/logo_575688f6a82d77d4.png
Normal file
|
After Width: | Height: | Size: 2.6 KiB |
BIN
static/logos/logo_5ac23f7ad6e67263.ico
Normal file
|
After Width: | Height: | Size: 52 KiB |
BIN
static/logos/logo_6bfa8f7b4428a3fb.png
Normal file
|
After Width: | Height: | Size: 16 KiB |
BIN
static/logos/logo_7dbcd1d7f937abf9.png
Normal file
|
After Width: | Height: | Size: 2.6 KiB |
BIN
static/logos/logo_88a6e9f8cdfead02.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
static/logos/logo_88abeac22a366309.png
Normal file
|
After Width: | Height: | Size: 30 KiB |
BIN
static/logos/logo_8c840abfb294f707.jpg
Normal file
|
After Width: | Height: | Size: 72 KiB |
BIN
static/logos/logo_8cf9350f73b2c36d.jpeg
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
static/logos/logo_8d130c222e8d038b.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
static/logos/logo_8d34bb9928739303.png
Normal file
|
After Width: | Height: | Size: 2.4 KiB |
BIN
static/logos/logo_8e157f69c59d76c2.jpeg
Normal file
|
After Width: | Height: | Size: 7.0 KiB |
BIN
static/logos/logo_9146a060dca914df.webp
Normal file
|
After Width: | Height: | Size: 8.4 KiB |
BIN
static/logos/logo_9464cf10bb64e6c4.png
Normal file
|
After Width: | Height: | Size: 27 KiB |
BIN
static/logos/logo_9dbb955fd673993a.jpg
Normal file
|
After Width: | Height: | Size: 28 KiB |
BIN
static/logos/logo_a076ff3de1b081c4.webp
Normal file
|
After Width: | Height: | Size: 18 KiB |
BIN
static/logos/logo_a51841603f9b4dae.webp
Normal file
|
After Width: | Height: | Size: 986 B |
BIN
static/logos/logo_a5dc086863a261c4.png
Normal file
|
After Width: | Height: | Size: 1.9 KiB |
BIN
static/logos/logo_a95772e3b6c1bd86.png
Normal file
|
After Width: | Height: | Size: 2.3 KiB |
BIN
static/logos/logo_ba18fb1a5302ebfb.png
Normal file
|
After Width: | Height: | Size: 5.6 KiB |
BIN
static/logos/logo_c90157612a6ae8cd.jpeg
Normal file
|
After Width: | Height: | Size: 2.4 KiB |
BIN
static/logos/logo_cc53b27d8bc72c42.png
Normal file
|
After Width: | Height: | Size: 4.6 KiB |
BIN
static/logos/logo_d004557f16c14fab.png
Normal file
|
After Width: | Height: | Size: 10 KiB |
BIN
static/logos/logo_d222bb537ea8ccea.webp
Normal file
|
After Width: | Height: | Size: 1.8 KiB |
BIN
static/logos/logo_d2913ed76e7ed261.png
Normal file
|
After Width: | Height: | Size: 4.4 KiB |
BIN
static/logos/logo_e1d79b4ac087b148.png
Normal file
|
After Width: | Height: | Size: 2.5 KiB |
BIN
static/logos/logo_e20fd6316be22ba1.jpg
Normal file
|
After Width: | Height: | Size: 9.0 KiB |
BIN
static/logos/logo_e7e6c886f3fcb03e.png
Normal file
|
After Width: | Height: | Size: 320 KiB |
BIN
static/logos/logo_e8f2688cb99c3df0.png
Normal file
|
After Width: | Height: | Size: 5.4 KiB |
BIN
static/logos/logo_eb5c5b4571936af5.jpeg
Normal file
|
After Width: | Height: | Size: 8.3 KiB |
BIN
static/logos/logo_ee37fd064488f475.png
Normal file
|
After Width: | Height: | Size: 4.7 KiB |
BIN
static/logos/logo_efbd3cd27fb0a31e.png
Normal file
|
After Width: | Height: | Size: 372 KiB |
BIN
static/logos/logo_f325651a782f4201.webp
Normal file
|
After Width: | Height: | Size: 7.4 KiB |
BIN
static/logos/logo_fa0e9407aa4d9aa5.png
Normal file
|
After Width: | Height: | Size: 3.7 KiB |
BIN
static/logos/logo_fb5b1867aaf4f5a0.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
static/logos/logo_fellou_ai.ico
Normal file
|
After Width: | Height: | Size: 204 KiB |
BIN
static/logos/logo_ff45f264e6f9aff7.png
Normal file
|
After Width: | Height: | Size: 3.4 KiB |
BIN
static/logos/logo_open_bochaai_com.ico
Normal file
|
After Width: | Height: | Size: 52 KiB |
BIN
static/logos/logo_openrouter_ai.png
Normal file
|
After Width: | Height: | Size: 25 KiB |
BIN
static/logos/logo_osfront_onesight_com.png
Normal file
|
After Width: | Height: | Size: 10 KiB |
BIN
static/logos/logo_tavily_com.png
Normal file
|
After Width: | Height: | Size: 98 KiB |
BIN
static/logos/logo_vip2_loli_io.png
Normal file
|
After Width: | Height: | Size: 26 KiB |
BIN
static/logos/logo_www_waytoagi_com.ico
Normal file
|
After Width: | Height: | Size: 4.4 KiB |