You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
59 lines
1.5 KiB
59 lines
1.5 KiB
#!/bin/bash
|
|
|
|
# Linux部署脚本
|
|
echo "开始部署LTEMvcApp到Linux..."
|
|
|
|
# 检查是否安装了.NET Runtime
|
|
if ! command -v dotnet &> /dev/null; then
|
|
echo "错误: 未找到.NET Runtime,请先安装.NET 6.0或更高版本"
|
|
echo "安装命令: sudo apt-get update && sudo apt-get install -y dotnet-runtime-6.0"
|
|
exit 1
|
|
fi
|
|
|
|
# 检查端口15001是否被占用
|
|
if lsof -Pi :15001 -sTCP:LISTEN -t >/dev/null ; then
|
|
echo "警告: 端口15001已被占用,请先停止占用该端口的进程"
|
|
echo "查看占用进程: lsof -i :15001"
|
|
exit 1
|
|
fi
|
|
|
|
# 创建部署目录
|
|
DEPLOY_DIR="./deploy"
|
|
if [ -d "$DEPLOY_DIR" ]; then
|
|
rm -rf "$DEPLOY_DIR"
|
|
fi
|
|
mkdir -p "$DEPLOY_DIR"
|
|
|
|
# 发布应用
|
|
echo "正在发布应用..."
|
|
dotnet publish -c Release -o "$DEPLOY_DIR" --self-contained false
|
|
|
|
if [ $? -ne 0 ]; then
|
|
echo "发布失败,请检查项目配置"
|
|
exit 1
|
|
fi
|
|
|
|
echo "应用发布成功到目录: $DEPLOY_DIR"
|
|
|
|
# 启动应用
|
|
echo "正在启动应用..."
|
|
cd "$DEPLOY_DIR"
|
|
dotnet LTEMvcApp.dll &
|
|
|
|
# 等待应用启动
|
|
sleep 3
|
|
|
|
# 检查应用是否成功启动
|
|
if curl -s http://localhost:15001 > /dev/null; then
|
|
echo "✅ 应用启动成功!"
|
|
echo "🌐 访问地址: http://localhost:15001"
|
|
echo "🌐 外部访问: http://$(hostname -I | awk '{print $1}'):15001"
|
|
echo ""
|
|
echo "📋 常用命令:"
|
|
echo " 查看日志: tail -f nohup.out"
|
|
echo " 停止应用: pkill -f LTEMvcApp"
|
|
echo " 查看进程: ps aux | grep LTEMvcApp"
|
|
else
|
|
echo "❌ 应用启动失败,请检查日志"
|
|
exit 1
|
|
fi
|