Files
jiebanke/backend/scripts/sync-to-server.ps1

65 lines
2.3 KiB
PowerShell
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 结伴客后端同步脚本 - Windows PowerShell版本
# 同步文件到CentOS生产服务器
# 服务器地址: www.jiebanke.com
# 服务器目录: /data/nodejsjiebanke/
Write-Host "🚀 开始同步文件到生产服务器..." -ForegroundColor Green
Write-Host "📋 服务器: www.jiebanke.com"
Write-Host "📁 目标目录: /data/nodejsjiebanke/"
Write-Host "📁 本地目录: e:\vue\jiebanke\backend\"
Write-Host ""
# 检查rsync是否可用
$rsyncAvailable = Get-Command rsync -ErrorAction SilentlyContinue
if (-not $rsyncAvailable) {
Write-Host "❌ rsync未安装请先安装Git for Windows或Cygwin" -ForegroundColor Red
Write-Host "💡 或者使用WSL中的rsync"
exit 1
}
# 同步文件到服务器
try {
Write-Host "📤 正在同步文件..." -ForegroundColor Yellow
$rsyncArgs = @(
"-avz",
"--delete",
"--exclude=node_modules/",
"--exclude=logs/",
"--exclude=uploads/",
"--exclude=.git/",
"--exclude=.env",
"--exclude=*.log",
"--exclude=*.tmp",
"--exclude=.DS_Store",
"--exclude=*.swp",
"--exclude=*.swo",
"-e", "ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null",
"e:/vue/jiebanke/backend/",
"root@www.jiebanke.com:/data/nodejsjiebanke/"
)
& rsync @rsyncArgs
if ($LASTEXITCODE -eq 0) {
Write-Host "✅ 文件同步完成!" -ForegroundColor Green
} else {
Write-Host "❌ 文件同步失败,退出码: $LASTEXITCODE" -ForegroundColor Red
exit $LASTEXITCODE
}
# 设置文件权限
Write-Host "🔧 设置文件权限..." -ForegroundColor Yellow
ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null root@www.jiebanke.com "chmod 755 /data/nodejsjiebanke/*.sh && chmod 644 /data/nodejsjiebanke/package.json"
Write-Host ""
Write-Host "✅ 同步完成!" -ForegroundColor Green
Write-Host "📋 同步时间: $(Get-Date)"
Write-Host "💡 接下来请在服务器上运行启动脚本:"
Write-Host " ssh root@www.jiebanke.com"
Write-Host " cd /data/nodejsjiebanke/ && ./start-server.sh"
} catch {
Write-Host "❌ 同步过程中发生错误: $($_.Exception.Message)" -ForegroundColor Red
exit 1
}