4 changed files with 69 additions and 2 deletions
@ -0,0 +1,59 @@ |
|||||
|
#!/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 |
Loading…
Reference in new issue