91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ASP.NET Core部署項目到Ubuntu Server的示例分析

發布時間:2021-06-30 15:54:06 來源:億速云 閱讀:363 作者:小新 欄目:開發技術

這篇文章給大家分享的是有關ASP.NET Core部署項目到Ubuntu Server的示例分析的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

基于上一篇成功安裝Ubuntu Server 16.10的基礎上,接下來繼續我們ASP.NET Core項目的部署之旅!

只是對于這些年整天和Windows打交道的我,初次使用Linux確實有點費勁。

但是為了.NET Core跨平臺的這一重大特性,即使再多的坑,也還是要硬著頭皮上的。

不然會有人懷著詫異的眼神問你:你的.NET Core項目還部署到Windows上?

廢話不多說,預祝你在十步之內成功部署!<( ̄︶ ̄)↗[GO!]

一、安裝.NET Core SDK

依次輸入以下命令即可完成安裝,如果中間有失敗的,請多嘗試幾次。

sudo sh -c 'echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/dotnet-release/ yakkety main" > /etc/apt/sources.list.d/dotnetdev.list'

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 417A0893

sudo apt-get update

sudo apt-get install dotnet-dev-1.0.1

安裝好之后試著執行一下dotnet命令,出現以下內容,說明你已經安裝成功,恭喜!

ASP.NET Core部署項目到Ubuntu Server的示例分析

二、小試牛刀

1、創建一個文件夾,命名為test,然后切換之

mkdir test

cd test

2、初始化一下CLI配置

dotnet new

ASP.NET Core部署項目到Ubuntu Server的示例分析

3、創建一個MVC項目

dotnet new mvc

4、構建該項目并運行

dotnet restore

dotnet run

ASP.NET Core部署項目到Ubuntu Server的示例分析

5、如果能監聽成功,說明沒問題。接下來進入Program.cs文件,并修改成如下內容,在80端口監聽所有的網絡適配器

1)、vi Program.cs //打開Program.cs文件

2)、i //進入編輯模式

3)、Esc鍵退出編輯模式

4)、:wq //保存并退出

ASP.NET Core部署項目到Ubuntu Server的示例分析

6、安裝反向代理nginx,并啟動之,當然了,apache也是未嘗不可的。

sudo apt-get install nginx

sudo service ngnix start

然后訪問一下服務器的地址,如果出現如下頁面,說明已經安裝成功

ASP.NET Core部署項目到Ubuntu Server的示例分析

7、安裝好之后進入到以下目錄,打開default文件并修改為以下的內容

cd /etc/nginx/sites-available

sudo vim default

ASP.NET Core部署項目到Ubuntu Server的示例分析

順便記錄幾個常用的編輯命令

vim Program.cs //打開或新建Program.cs文件

i //進入編輯模式

Esc鍵 //退出編輯模式

yy //復制光標所在行

5yy //復制光標起后5行

p //粘貼

dd //刪除光標所在行

5dd //刪除光標起后5行

u  //撤銷操作

:q! //不保存并退出

:wq //保存并退出

8、重新啟動Nginx來應用配置

sudo nginx -t

sudo nginx -s reload

9、接下來就是見證奇跡的時刻。重新運行我們剛才的test項目,然后打開本機瀏覽器,輸入:http://192.168.1.104(如果不知道自己ubuntu服務器地址的,輸入ifconfig命令進行查看)訪問,如果出現如下畫面,說明配置已經成功。服務器已經不再是IIS,取而代之的是ubuntu上的nginx,版本為1.10.1

ASP.NET Core部署項目到Ubuntu Server的示例分析

Tips:如果不成功的話,不要灰心!試著用以下命令更新一下系統,或者卸載nginx然后重新再來一次,相信曙光就要到來!

sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
sudo reboot

三、配置守護進程Supervisor

到目前位置,應用程序還是我們自己手動運行起來的,而且還不能Ctrl+C關閉并退出,否則你的網站將無法訪問!所以我們需要有一個類似監視器的角色來保證ASP.NET Core進程的正常運行,那么Supervisor會是我們的首選。

1、安裝supervisor

sudo apt-get install supervisor

2、發布上面mvc的test項目,記錄下你的發布路徑

dotnet publish

ASP.NET Core部署項目到Ubuntu Server的示例分析

3、發布成功之后記得切換到發布目錄執行下dotnet運行命令,然后重復上面的步驟9看下是否可以正常訪問,沒問題的話我們進行下一步

ASP.NET Core部署項目到Ubuntu Server的示例分析

4、切換到var路徑,創建一個netcore文件夾,再在其下創建一個test-publish文件夾,然后將上面發布后的所有文件拷貝到這里

cd /var

sudo mkdir netcore

cd netcore

sudo mkdir test-publish

cd test-publish

sudo cp -a /home/jack/test/bin/Debug/netcoreapp1.1/publish/* /var/netcore/test-publish

ls

ASP.NET Core部署項目到Ubuntu Server的示例分析

5、創建test.conf的supervisor配置文件,并將以下內容添加進去(一定要仔細不要手抖寫錯了)

cd /etc/supervisor/conf.d

sudo vim test.conf

ASP.NET Core部署項目到Ubuntu Server的示例分析

6、重新啟動supervisor來應用配置!然后試著用本機訪問下ubuntu server的IP,看下網站是否如你所愿的展示在了你的面前!如果和上面的步驟9一致,那么整個部署流程已經暫時告一段落,這樣一來即使你重啟了服務器,網站依舊可以訪問。到這里我終于算是松了一口氣。

sudo service supervisor restart

四、進階

接下來我就把我之前在IIS上搭好的項目:“ASP.NET Core:使用Dapper和SwaggerUI來豐富你的系統框架”也部署到Ubuntu Server上去,其中需要準備一個遠程登錄工具:Putty,用來將我們本機的發布文件傳輸到服務器上,同時你還可以像在Ubuntu中一樣進行一些命令操作。

1、在Ubuntu Server上安裝OpenSSH Server并啟動該SSH服務(默認端口22即可)

sudo apt-get install openssh-server

sudo /etc/init.d/ssh start

2、啟用防火墻配置ufw(默認是待用的,同時也是為了安全),然后打開SSH服務的22端口。

sudo ufw default deny

sudo ufw enable

sudo ufw allow ssh

ASP.NET Core部署項目到Ubuntu Server的示例分析

注:第一條命令表示所有端口默認關閉,除非被指定打開。至于紅框內的,就不用我過多解釋了吧(笑而不語~)。

3、打開Putty,輸入Ubuntu Server的IP地址,端口為22,連接類型為SSH,你可以把這個配置保存下來,命名為:ubuntu即可,下次直接雙擊打開就行了,挺方便的。

ASP.NET Core部署項目到Ubuntu Server的示例分析

4、出現下面這個提示時,選擇“是”即可

ASP.NET Core部署項目到Ubuntu Server的示例分析

5、然后輸入服務器的用戶名和密碼進行登錄,如果沒問題,你會看到如下畫面

ASP.NET Core部署項目到Ubuntu Server的示例分析

5、小試牛刀:打開windows的命令提示窗口,輸入以下命令,表示復制一個test.txt(E盤下)文件到ubuntu服務器上test文件夾下

pscp test.txt jack@192.168.1.105:test

ASP.NET Core部署項目到Ubuntu Server的示例分析

隨后切換至Putty上進行查看

ASP.NET Core部署項目到Ubuntu Server的示例分析

6、重新發布我們的項目,指定runtime為ubuntu.16.10-x64,如需更多,請點擊這里進行查看。

復制代碼 代碼如下:

dotnet publish --framework netcoreapp1.1 --runtime ubuntu.16.10-x64 --output "E:\Publish\Light.Api-Ubuntu" --configuration Release

ASP.NET Core部署項目到Ubuntu Server的示例分析

但是不幸的是出現了一個大大的報錯:“project.assets.json don't have a target for ‘.NETCoreApp,Version=v1.1/ubuntu.16.10-x64'”,網上一查,發現是項目文件csproj中沒有此依賴,添加之后重新運行發布命令,如果出現最后一個畫面,說明你就成功了!

<RuntimeIdentifiers>ubuntu.16.10-x64</RuntimeIdentifiers>

ASP.NET Core部署項目到Ubuntu Server的示例分析

ASP.NET Core部署項目到Ubuntu Server的示例分析

同時將我們的監聽端口設置為6000,否則的話將無法啟動,因為5000端口已經被測試項目test占用了。而其中的UseIISIntegration方法可以拿掉,因為我們是要發布到Ubuntu服務器上,用不著IIS,但是這樣的話你的本機也將會無法訪問。

ASP.NET Core部署項目到Ubuntu Server的示例分析

7、到了最重要的一環:使用PSFTP,主要命令為open和put,將我們剛才發布的Light.Api項目Copy到Light.Api-Publish下,你會看到很多的復制記錄

ASP.NET Core部署項目到Ubuntu Server的示例分析

8、復制完成之后,切換到服務器的該目錄下,如果能啟動,說明沒問題

ASP.NET Core部署項目到Ubuntu Server的示例分析

9、接下來就不用多說了,Ctrl+Art+F2切換到第二個管理頁面,把nginx的監聽端口改成6000并重啟nginx

ASP.NET Core部署項目到Ubuntu Server的示例分析

10、屏住呼吸,在本機瀏覽器中輸入服務器地址:“http://192.168.1.105/swagger/ui”,如果可以正常訪問,并且可以請求到數據,說明你已經成功了!如果發現服務器不可用的話,多半是本機開啟了防火墻,連接不到數據庫導致的,因為這時你ping主機也是ping不通的,只需到控制面板中關閉防火墻即可!最后的效果圖,nginx on ubuntu就是強有力的證明

ASP.NET Core部署項目到Ubuntu Server的示例分析

感謝各位的閱讀!關于“ASP.NET Core部署項目到Ubuntu Server的示例分析”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

太白县| 大化| 凉山| 乌拉特前旗| 彝良县| 仁寿县| 定日县| 广元市| 望江县| 客服| 仙游县| 德令哈市| 晋江市| 南岸区| 桦南县| 宁明县| 宿州市| 浏阳市| 浪卡子县| 孟连| 龙胜| 久治县| 德清县| 荥阳市| 崇阳县| 万宁市| 巨野县| 十堰市| 乌兰察布市| 喜德县| 南城县| 黄浦区| 元朗区| 团风县| 台北县| 镇康县| 黑龙江省| 龙海市| 雅安市| 成安县| 汶川县|