[.NET][C#.NET]走跳在Linux的人生(七).NET Core安裝

雖然沒辦法所有系統都用.NET Core重新開發,但還是有小部分功能可以趕上跨平台的潮流,我們來試試在Linux(Red Hat Enterprise)環境跑.NET Core。

 

 


準備Linux環境

先從Azure新增一台Linux(Red Hat Enterprise 7.3),不過只能選擇Pay as You Go付費方案!

*為了管理方便,後面可以安裝xrdp tigervnc-server 來讓我們能直接windows透過mstsc登入linux環境。

 


.NET Core 安裝

1. Enable .NET Core Repository 

Enable the .NET Core channel for Red Hat Enterprise Linux 7 Server

subscription-manager repos –list | grep dotnet 
subscription-manager repos --enable=rhel-7-server-dotnet-rpms

 

執行結果

 

2.Set Up Your Development Environment 

enable support for Software Collections on a system

yum install scl-utils 

Install and enable the .NET Core SDK 

yum install rh-dotnetcore11 

執行

 

3.add dotnetcore to bash 指令中

首先先測試一下,我們來看一下dotnet core安裝的版本

dotnet --version

執行結果

 

找不到dotnet command,這時我們要將dotnetcore加入bash指令,然後再查詢一次dotnet core版本 

scl enable rh-dotnetcore11 bash 
dotnet --version

現在是認得了,但重新打開terminal視窗,dotcore又不認得了

 

4.如果要讓下一次shell啟動時仍然認得dotnet,我們必須編輯non-login shell Startup File(bashrc檔案) 

增加一行 

source scl_source enable rh-dotnetcore11 

 

範例如下:

儲存,然後關閉編輯器及terminal,接著重新打開terminal再試一次。 

再也不會認不得dotnet了。

 


測試.NET Core

1.先準備好資料夾,並切到dotnet目錄下

mkdir dotnet 
cd dotnet

 

Dotnet core CLI (notnet new) : 

根據指定的範本建立新的專案、組態檔或方案

dotnet new

 

執行,預設會新增主控台應用程式,預設會下載Hello專案程式。

自動下載program.cs及project.json的專案檔 

打開programs.cs,連寫Hello World!的時間都可以省下來了 

 

dotnet restore命令

命令會使用 NuGet 來還原相依性以及專案檔中指定的專案特定工具。 *預設會平行執行相依性和工具的還原。

dotnet restore 

執行

多了一個lock檔案

 

dotnet run指令

從原始碼執行,run指令會先編譯程式碼,然後執行 

Hello World! 

 

我們也可以切到bin的目錄下直接透過dotnet指令執行dotnet.dll 

環境準備好了!

 

下一次我們從Windows開發專案產出組件,接著Porting到Linux執行。

 

往WORA(write once run anywhere)挺進

 


參考: 

Install for Red Hat Enterprise Linux 7 Server (64 bit) 

INSTALLING .NET CORE ON RED HAT ENTERPRISE LINUX 

dotnet new

dotnet restore

dotnet run