|
|
#!/bin/bash
|
|
|
# =============================================================================
|
|
|
# P600 机载电脑 - 电脑端网页本地部署脚本
|
|
|
# 用法: P600 上执行: bash deploy_p600_local.sh
|
|
|
# 效果: 在 P600 上运行 Flask 服务,本地访问 http://192.168.1.14:5000
|
|
|
# 直接连接 P600 机载电脑的 rosbridge,浏览器不拦截内网连接
|
|
|
# =============================================================================
|
|
|
|
|
|
set -e
|
|
|
|
|
|
echo "========================================="
|
|
|
echo " P600 智途投送电脑端本地部署"
|
|
|
echo "========================================="
|
|
|
echo ""
|
|
|
|
|
|
PROJECT_DIR="/opt/zhitu-p600"
|
|
|
|
|
|
# 创建项目目录
|
|
|
echo "📁 创建项目目录 ${PROJECT_DIR} ..."
|
|
|
mkdir -p ${PROJECT_DIR}
|
|
|
|
|
|
# 解压文件
|
|
|
echo "📦 解压文件..."
|
|
|
tar xzf zhitu-local-deploy.tar.gz -C ${PROJECT_DIR}
|
|
|
|
|
|
# 安装 Python 依赖
|
|
|
echo "🐍 安装 Python 依赖..."
|
|
|
cd ${PROJECT_DIR}/server
|
|
|
pip3 install flask flask-cors werkzeug 2>/dev/null || pip install flask flask-cors werkzeug 2>/dev/null || echo "⚠️ pip 安装失败,手动执行: pip install flask flask-cors"
|
|
|
|
|
|
# 创建 systemd 服务
|
|
|
echo "📝 创建系统服务 zhitu-p600.service ..."
|
|
|
|
|
|
cat > /etc/systemd/system/zhitu-p600.service << 'EOF'
|
|
|
[Unit]
|
|
|
Description=智途投送电脑端 - P600 本地服务
|
|
|
After=network.target
|
|
|
|
|
|
[Service]
|
|
|
Type=simple
|
|
|
User=root
|
|
|
WorkingDirectory=/opt/zhitu-p600/server
|
|
|
ExecStart=/usr/bin/python3 app.py
|
|
|
Restart=always
|
|
|
RestartSec=5
|
|
|
StandardOutput=append:/var/log/zhitu-p600.log
|
|
|
StandardError=append:/var/log/zhitu-p600.log
|
|
|
|
|
|
[Install]
|
|
|
WantedBy=multi-user.target
|
|
|
EOF
|
|
|
|
|
|
# 重载并启用服务
|
|
|
systemctl daemon-reload
|
|
|
systemctl enable zhitu-p600.service
|
|
|
|
|
|
# 启动服务
|
|
|
echo "🚀 启动服务..."
|
|
|
systemctl restart zhitu-p600.service
|
|
|
sleep 2
|
|
|
|
|
|
# 检查状态
|
|
|
echo ""
|
|
|
echo "📊 服务状态:"
|
|
|
systemctl status zhitu-p600.service --no-pager | head -10
|
|
|
|
|
|
echo ""
|
|
|
echo "========================================="
|
|
|
echo " ✅ 部署完成!"
|
|
|
echo "========================================="
|
|
|
echo ""
|
|
|
echo " 访问地址: http://192.168.1.14:5000"
|
|
|
echo " rosbridge: 本地自动连接 (无需 WebSocket 跨网)"
|
|
|
echo ""
|
|
|
echo " 管理命令:"
|
|
|
echo " 查看状态: sudo systemctl status zhitu-p600"
|
|
|
echo " 重启: sudo systemctl restart zhitu-p600"
|
|
|
echo " 查看日志: tail -f /var/log/zhitu-p600.log"
|
|
|
echo ""
|