1.環境准備
- Centaos7+Win10 虛擬機
- Win10安裝VS2017 https://www.asp.net/downloads 注意勾選下.Net Core

3.Centaos安裝netcore 1.1參見https://www.microsoft.com/net/core#linuxcentos
sudo yum install libunwind libicu curl -sSL -o dotnet.tar.gz https://go.microsoft.com/fwlink/?linkid=848821 sudo mkdir -p /opt/dotnet && sudo tar zxf dotnet.tar.gz -C /opt/dotnet sudo ln -s /opt/dotnet/dotnet /usr/local/bin

dotnet new console -o hwapp cd hwapp
dotnet restore
主要是尋找當前目錄下的項目文件,然后利用NuGet庫還原整個項目的依賴庫,然后遍歷每個目錄,生成項目文件,繼續還原該項目文件中的依賴項;
dotnet run
如果是交互的就直接運行,否則編譯然后執行

2.項目准備
1.我這邊項目名稱為: NetCore.Api


2.修改發布相關支持;
.NET Core徹底放棄project.json,全面改回.csproj
http://www.cnblogs.com/wangrudong003/p/6591104.html
打開:NetCore.Api.csproj 添加發布支持 RuntimeIdentifiers配置
<PropertyGroup>
<RuntimeIdentifiers>win10-x64;centos.7-x64</RuntimeIdentifiers>
</PropertyGroup>
3.打開Program.cs修改端口支持
public static void Main(string[] args) { var host = new WebHostBuilder() .UseKestrel() .UseUrls("http://*:8088") .UseContentRoot(Directory.GetCurrentDirectory()) .UseIISIntegration() .UseStartup<Startup>() .UseApplicationInsights() .Build(); host.Run(); }
4.編譯運行沒有問題,通過WinSCP上傳到Centaos7服務器上

3.Linux部署
進入上傳的項目目錄

dotnet restore 命令進行還原依賴項

還原完成后,發布項目文件
dotnet publish

復制發布后的文件到運行文件夾
cp -rf /home/xupp/website/bin/Debug/netcoreapp1.1/publish/ /home/xupp/web.test/


運行項目
nohup dotnet NetCore.Api.dll
只是做測試用,正式環境下可以使用Supervisor守護進程

外網測試看能否訪問,不能訪問的話先用dotnet NetCore.Api.dll運行,並檢查防火牆配置

Ngiux配置(負載均衡下用)
Ngiux安裝http://www.linuxidc.com/Linux/2016-09/134907.htm
Ngiux簡單配置

http://www.cnblogs.com/wangrudong003/p/6591104.html

NetCore2.0體驗參見:
http://www.cnblogs.com/linezero/p/nightlynetcore2.html
http://www.php.cn/csharp-article-363405.html
作者:釋迦苦僧 出處:http://www.cnblogs.com/woxpp/p/7048082.html本文版權歸作者和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接。
