我正在 Visual Studio 2017 中構建一個 .net core 應用程序。我想將發布過程自動化到 Linux 計算機。這是我當前的流程:在 Visual Studio 中,單擊“發布”選項卡,選擇“發布”打開WinSCP,登錄目標linux機器打開文件夾solution\myapp\bin\Release\netcoreapp2.2\publish\CTRL+A選擇發布文件夾中的所有內容,CTRL+C復制所有文件,然后CTRL+V粘貼到WinSCP目標目錄打開PuTTY,登錄目標linux機器,使用以下命令重新啟動應用程序dotnet myapp.dll從 Visual Studio 發布時可以自動執行這些步驟嗎?
1 回答

收到一只叮咚
TA貢獻1821條經驗 獲得超5個贊
嘗試dotnet-publish-ssh。
它的工作方式與 類似dotnet publish
,但允許您通過 SSH 將應用程序復制到目標 Linux 計算機。
這是我的配置:
dotnet?publish-ssh?--ssh-host?<host>?--ssh-user?<user>?--ssh-password?<pass>?--ssh-path?/var/<myapp>?--configuration?Release?--framework?netcoreapp3.1?--runtime?linux-x64?--self-contained?false?/p:PublishSingleFile=true
要重新啟動應用程序,您可以嘗試使用 Posh-SSH 模塊的 PowerShell:
Import-Module Posh-SSH
$serverAddress = "host addr"
$user = "user"
$pass = ConvertTo-SecureString "pass" -AsPlainText -Force
$creds = New-Object System.Management.Automation.PSCredential ($user, $pass)
$launchFolder = "/var/<myapp>"
$sshSession = New-SSHSession -ComputerName $serverAddress -Credential $creds -ErrorAction Stop
Invoke-SSHCommand -SSHSession $sshSession -Command "<your restart command>"
Remove-SSHSession -SSHSession $sshSession
- 1 回答
- 0 關注
- 201 瀏覽
添加回答
舉報
0/150
提交
取消