1. 程式人生 > >一、netcore跨平臺之 Linux上部署netcore和webapi

一、netcore跨平臺之 Linux上部署netcore和webapi

這幾天閒著的時候在linux上部署了一下netcore webapi,下面就紀要一下這個過程。

中間遇到不少的坑,心裡都是淚啊。

 話不多說,開始幹活。

------------------------------------------------------------------------

第一步,你得先建立一個netcore的介面,這個我就簡單建立一個介面。

關於開發工具,我用的是vs2017,當然最新的vs2019也出來了,你可以用新的,都沒關係。

開始選擇建立專案,如圖所示,這個入門的程式設計師都應該懂

 

 

 選擇API

 

 

 點選確定按鈕就建立成功。

如圖開啟 Program.cs 

 

 

 在這裡新增一段程式碼

 

程式碼新增後

 

 

 這樣程式碼就寫好了。

接下來就是釋出。

 

選擇資料夾,選擇你要釋出的專案的位置。

 

 

 點選高階配置如下,注意下,這裡的目標框架是2.2版本,所以我們在linux上安裝的也是2.2。

 這裡我就遇到過坑,我vs釋出的是2.0的版本,結果我linux是2.2,就各種執行報錯,後來改成2.2就好了。

 

 最後儲存併發布就好了。

netcore專案的建立和釋出就這樣結束了。

第二步,你得準備一個linux伺服器,然後安裝環境

如果你條件允許,可以直接在阿里雲或者騰訊雲、華為雲、百度雲上買一個伺服器。

新使用者是白菜價哦,(這裡真不是打廣告)當然你可以在你電腦上安裝一個VMware虛擬機器。

具體安裝步驟百度一下一大把,這裡就不演示了。

我就在在百度雲買了一個linux伺服器,嗯,價格還算便宜,畢竟新使用者,為什麼用百度雲??

當然不是因為他好,而是我阿里雲已經不是新使用者了

好了,我們繼續。

用xshell登入到你的linux伺服器上。(如果不懂linux,沒關係,你總會百度吧)

登入成功後,你可以在直接輸入如下命令

sudo yum install dotnet-sdk-2.2

 

 點選確認,你需要等一段時間,如果你伺服器網速很差,那麼你可以會等很久。

 如下圖示,遇到這裡你需要點選敲一下你的鍵盤上的 y 回車即可

 這個時候系統開始慢慢的下載了,請耐心等待即可。

 

 

 終於下載完成了

 

你可以輸入下面的命令看看是否成功

dotnet --version

顯示如下,表示按照成功

 

 

 

然後我們把釋出包上傳到伺服器上來

我這裡用的是xftp工具,當然也有其他工具可,下圖所示是我安裝的兩個工具,大家可以去下載安裝。

 

 

這裡給大家提供一些我在網盤儲存的一些工具

Xshell+Xftp真正破解版    https://pan.baidu.com/s/1Ew1XPg11sakpc8mvK6QsHg 

 開啟xftp並連線到伺服器,如下所示

 

 

 

我這裡用的root許可權,這裡進來就直接就是root根目錄了

然後右鍵點選建立一個目錄用來儲存你上傳的netcore檔案,嗯,就取名netcore吧

 

 

 

 

 

 

 然後在左邊找到你剛剛釋出的那個包的位置,並且點選右邊的netcore進入到對應的目錄中

 

 

 

然後全選左邊的所有檔案,並右鍵然後點選傳輸,如圖所示

 

 

然後檔案就開始傳輸了

 

 

 

 

 等下面的傳輸沒有記錄了,那麼恭喜你,你傳遞完成了。

 

 有人可能會問為啥這麼多檔案,我vs2017本來沒有2.2版本,後來我在本機安裝了2.2,結果釋出後就這麼多......

然後我們再次回到xshell看看

輸入命令 ll 可以看到我們新加了一個檔案 netcore

 

 然後輸入命令cd  進入到我們上傳的這個釋出包中。

然後在輸入命令 ll

cd netcore
ll

我們可以找到WebApiTest.dll檔案

 

 然後輸入命令

dotnet WebApiTest.dll

如圖所示,就恭喜你你的專案執行正常。

 

 然後你Ctrl+C結束掉這個程式,這裡只能在伺服器內部訪問,外面是不能訪問的。

 然後輸入如下命令

dotnet WebApiTest.dll   --server.urls "http://*:6666"

如圖所示

 

 然後用postman或者一些線上工具訪問這個介面,如圖所示,那麼恭喜你成功了

這個測試工具的網站:https://www.sojson.com/httpRequest/

 

 

 好了,到這裡netcore在linux上配置就基本完成了,接下來下一篇我們開始講nginx的配置,以及讓netcore執行在nginx下。