天天看點

使用Jexus 5.8.2在Centos下部署運作Asp.net core一.添加Mono倉庫到系統二.安裝Mono三.測試Mono環境四.安裝Jexus5.8.2五.檢查Jexus是否正常工作六.建立站點七.設定jexus自動啟動八.安裝.net core九.部署asp.net core程式十.使用Jexus運作asp.net core的好處

這裡安裝的Jexus不是獨立版本,是以需要先安裝Mono,Mono隻是為了支援Jexus非獨立版本的運作,和.net core 沒有關系,使用jexus“獨立版”,避免安裝mono的麻煩。官方網站:https://www.jexus.org/

系統版本:Cenos7,Mono版本:5.0.1 Stable (5.0.1.1)

Mono官方doc:http://www.mono-project.com/download/#download-lin-centos

一.添加Mono倉庫到系統

以root身份執行下面的指令:

yum install yum-utils
rpm --import "http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF"
yum-config-manager --add-repo http://download.mono-project.com/repo/centos7/           

複制

二.安裝Mono

yum install mono-devel           

複制

等待漫長的安裝過程...

使用Jexus 5.8.2在Centos下部署運作Asp.net core一.添加Mono倉庫到系統二.安裝Mono三.測試Mono環境四.安裝Jexus5.8.2五.檢查Jexus是否正常工作六.建立站點七.設定jexus自動啟動八.安裝.net core九.部署asp.net core程式十.使用Jexus運作asp.net core的好處

安裝成功:

使用Jexus 5.8.2在Centos下部署運作Asp.net core一.添加Mono倉庫到系統二.安裝Mono三.測試Mono環境四.安裝Jexus5.8.2五.檢查Jexus是否正常工作六.建立站點七.設定jexus自動啟動八.安裝.net core九.部署asp.net core程式十.使用Jexus運作asp.net core的好處

三.測試Mono環境

  1.建立一個檔案名為hello.cs,内容如下:

using System;  
public class HelloWorld
{
     static public void Main ()
      {
          Console.WriteLine ("Hello Mono World");
      }
}           

複制

  2.執行指令編譯

mcs hello.cs           

複制

  編譯成功會出現 hello.exe

使用Jexus 5.8.2在Centos下部署運作Asp.net core一.添加Mono倉庫到系統二.安裝Mono三.測試Mono環境四.安裝Jexus5.8.2五.檢查Jexus是否正常工作六.建立站點七.設定jexus自動啟動八.安裝.net core九.部署asp.net core程式十.使用Jexus運作asp.net core的好處

  3.執行指令運作hello.exe

  運作成功會輸出一句經典的“Hello Mono Word”!

使用Jexus 5.8.2在Centos下部署運作Asp.net core一.添加Mono倉庫到系統二.安裝Mono三.測試Mono環境四.安裝Jexus5.8.2五.檢查Jexus是否正常工作六.建立站點七.設定jexus自動啟動八.安裝.net core九.部署asp.net core程式十.使用Jexus運作asp.net core的好處

  如若成功輸出,那麼mono環境便安裝成功

四.安裝Jexus5.8.2

   1.執行下面的指令安裝jexus

cd /tmp
wget linuxdot.net/down/jexus-5.8.2.tar.gz
tar -zxvf jexus-5.8.2.tar.gz
cd jexus-5.8.2           

複制

  安裝成功會有如下提示!

使用Jexus 5.8.2在Centos下部署運作Asp.net core一.添加Mono倉庫到系統二.安裝Mono三.測試Mono環境四.安裝Jexus5.8.2五.檢查Jexus是否正常工作六.建立站點七.設定jexus自動啟動八.安裝.net core九.部署asp.net core程式十.使用Jexus運作asp.net core的好處

五.檢查Jexus是否正常工作

啟動 /usr/jexus/jws start

停止 /usr/jexus/jws stop

重新開機 /usr/jexus/jws restart

使用Jexus 5.8.2在Centos下部署運作Asp.net core一.添加Mono倉庫到系統二.安裝Mono三.測試Mono環境四.安裝Jexus5.8.2五.檢查Jexus是否正常工作六.建立站點七.設定jexus自動啟動八.安裝.net core九.部署asp.net core程式十.使用Jexus運作asp.net core的好處

六.建立站點

首先得建“網站配置檔案”,在/usr/jexus/siteconf中的每一個檔案都是一個網站的配置檔案,每一個配置檔案就代表一個網站。

安裝jexus後,在/usr/jexus/siteocnf中,就已經有一個預設的網站配置檔案,檔案名叫“default”。

你可以修改這個配置檔案,也可以将這個配置檔案複制并修改為一個新站。

配置檔案中,有關鍵的三項是必填項:

port:端口号定義

root:虛拟根路徑和實體根路徑的定義

hosts:域名定義

端口号(port)是一個整數,一般是80,也可以是65535以下的其它整數,但這個端口号必須沒有其它服務程式占用。

根路徑(root)由兩部分組成,中間用空格分開。空格前表示這個網站通路時的虛拟根路徑(一般都是“/”),空格後是存放這個網站内容的檔案夾的實體路徑(比如“/var/www/default”)。

域名(hosts),填寫通路這個網站的域名,如果有多個域名,域名間就英文逗号分開,同時還可以用“泛域名”,比如“*.mysite.com”。

網站名:jexus把網站配置檔案的名稱,作為網站名。

** 強調,網站配置檔案名,不能有空格,第一個字元不能是“~”。

詳細說明:https://www.linuxdot.net/bbsfile-3500

執行以下指令,建立網站目錄:

mkdir /wwwroot/test
cd /wwwroot/test           

複制

上傳網站檔案到 test 目錄,然後修改jexus站點配置,這裡使用預設配置 default

cd /usr/jexus/siteconf
vim defalut           

複制

修改配置如下圖:

使用Jexus 5.8.2在Centos下部署運作Asp.net core一.添加Mono倉庫到系統二.安裝Mono三.測試Mono環境四.安裝Jexus5.8.2五.檢查Jexus是否正常工作六.建立站點七.設定jexus自動啟動八.安裝.net core九.部署asp.net core程式十.使用Jexus運作asp.net core的好處

修改完成,儲存退出!

執行指令重新開機jexus:

/usr/jexus/jws restart           

複制

然後輸入ip即可正常通路,這裡我傳的是一個簡單的html網頁

使用Jexus 5.8.2在Centos下部署運作Asp.net core一.添加Mono倉庫到系統二.安裝Mono三.測試Mono環境四.安裝Jexus5.8.2五.檢查Jexus是否正常工作六.建立站點七.設定jexus自動啟動八.安裝.net core九.部署asp.net core程式十.使用Jexus運作asp.net core的好處

七.設定jexus自動啟動

   1.建立 jexus.service

cd /lib/systemd/system
vim jexus.service           

複制

  向檔案 jexus.service 粘貼下面的内容并儲存:

[Unit]
Description=jexus
After=network.target
[Service]
Type=forking
ExecStart=/usr/jexus/jws start
ExecReload=/usr/jexus/jws restart
ExecStop=/usr/jexus/jws stop
PrivateTmp=true
[Install]
WantedBy=multi-user.target           

複制

  執行指令,加入服務:

systemctl enable jexus.service           

複制

  啟動服務:

systemctl start jexus.service           

複制

  檢視服務狀态:

systemctl status jexus.service           

複制

使用Jexus 5.8.2在Centos下部署運作Asp.net core一.添加Mono倉庫到系統二.安裝Mono三.測試Mono環境四.安裝Jexus5.8.2五.檢查Jexus是否正常工作六.建立站點七.設定jexus自動啟動八.安裝.net core九.部署asp.net core程式十.使用Jexus運作asp.net core的好處

   重新開機測試:

reboot           

複制

   等待重新開機完成,執行指令檢視服務狀态,若啟動則為設定成功!

使用Jexus 5.8.2在Centos下部署運作Asp.net core一.添加Mono倉庫到系統二.安裝Mono三.測試Mono環境四.安裝Jexus5.8.2五.檢查Jexus是否正常工作六.建立站點七.設定jexus自動啟動八.安裝.net core九.部署asp.net core程式十.使用Jexus運作asp.net core的好處

至此,Jexus的安裝和配置全部結束了,還是很簡單的,下面為大家帶來使用Jexus運作Asp.net core程式。

八.安裝.net core

這裡使用的是centos版本的,其他版本請檢視:https://www.microsoft.com/net/download/linux

  1.執行指令安裝

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           

複制

  2.驗證安裝

       (1)輸入指令  dotnet --info 可以檢視資訊

使用Jexus 5.8.2在Centos下部署運作Asp.net core一.添加Mono倉庫到系統二.安裝Mono三.測試Mono環境四.安裝Jexus5.8.2五.檢查Jexus是否正常工作六.建立站點七.設定jexus自動啟動八.安裝.net core九.部署asp.net core程式十.使用Jexus運作asp.net core的好處

    (2)建立一個hello word程式來驗證

dotnet new console -o hwapp

cd hwapp

dotnet restore

dotnet run           

複制

使用Jexus 5.8.2在Centos下部署運作Asp.net core一.添加Mono倉庫到系統二.安裝Mono三.測試Mono環境四.安裝Jexus5.8.2五.檢查Jexus是否正常工作六.建立站點七.設定jexus自動啟動八.安裝.net core九.部署asp.net core程式十.使用Jexus運作asp.net core的好處

  如果輸出 Hello Word!即代表.net core 安裝成功!

  上圖我使用的是另一台機子截的圖,不知道為啥 前面使用的機子無法使用dotnet new指令建立項目,提示無法找到模版,運作net core程式倒是沒問題。

九.部署asp.net core程式

  1.使用指令釋出asp.net core程式

dotnet publish           

複制

  2.使用ftp等工具上傳至伺服器

       這裡我放在/wwwroot/student

  3.執行dotnet指令運作程式,.確定程式可以正确運作

使用Jexus 5.8.2在Centos下部署運作Asp.net core一.添加Mono倉庫到系統二.安裝Mono三.測試Mono環境四.安裝Jexus5.8.2五.檢查Jexus是否正常工作六.建立站點七.設定jexus自動啟動八.安裝.net core九.部署asp.net core程式十.使用Jexus運作asp.net core的好處

  3.配置Jexus

cd /usr/jexus/siteconf
vim default           

複制

  配置如下圖:

使用Jexus 5.8.2在Centos下部署運作Asp.net core一.添加Mono倉庫到系統二.安裝Mono三.測試Mono環境四.安裝Jexus5.8.2五.檢查Jexus是否正常工作六.建立站點七.設定jexus自動啟動八.安裝.net core九.部署asp.net core程式十.使用Jexus運作asp.net core的好處

主要是: AppHost={cmd=dotnet /wwwroot/student/xxxxx.dll; root=/wwwroot/student; port=5000}

AppHost的配置格式是:

AppHost={CmdLine=應用程式指令行; AppRoot=應用程式工作目錄; Port=應用程式HTTP偵聽端口},其中:

“CmdLine”表示啟動應用程式的指令行,如:dotnet /var/www/site1/app.dll;

“AppRoot”表示應用程式工作目錄,如:/var/www/site1;

“Port”表示這個HTTP應用程式所使用的偵聽端口,如:5000(Asp.Core預設端口是5000)。

例如,假設Asp.Net Core應用程式存放的路徑在“/var/www/mysite”,其啟動程式存放在該檔案夾中,名稱是“webapp”,程式啟動後的偵聽端口是5000,那麼,AppHost配置應為: 

AppHost={CmdLine=/var/www/mysite/webapp;AppRoot=/var/www/mysite; port=5000 }

更多請檢視:http://www.cnblogs.com/yunei/p/5662642.html

  4.啟動jexus服務,并檢視網站

systemctl start jexus.service           

複制

  這裡示範使用的是ABP架構的asp.net zero項目

使用Jexus 5.8.2在Centos下部署運作Asp.net core一.添加Mono倉庫到系統二.安裝Mono三.測試Mono環境四.安裝Jexus5.8.2五.檢查Jexus是否正常工作六.建立站點七.設定jexus自動啟動八.安裝.net core九.部署asp.net core程式十.使用Jexus運作asp.net core的好處

十.使用Jexus運作asp.net core的好處

1,配置簡便:在Jexus上,Asp.net core隻是Jexus上的一個“站點”,是以,隻需在Jexus上配置這個站點就行,無需其它配置;

2,操作統一:Jexus停止這個站點就自動停止asp.net core應用,同樣地,啟動這個站點就自動啟動對應的core應用程式,無需多頭操作;

3,高性能:Jexus本身是一款與nginx性能相當的高性能Web伺服器,而Jexus與Asp.net core之間,是TCP轉發,不是反向代理之類的HTTP轉發,沒有Http協定解析和重組的性能消耗,是以,Jexus能更好的呈現Asp.net Core的高性能優勢;

4,端口自适應:在Jexus上,asp.net core不需要設定任何端口号,進而有效避免了多個asp.net core應用程式很可能出現的端口沖突這個讓運維人員頭疼的難題;

5,高度可靠性:如果core應用程式意外崩潰,Jexus會立即把它拉起來,進而做到7*24不間斷運作;

6,支援WebSocket:因為是TCP轉發,是以,對應用層協定沒有限制。

7,AppHost的port值設為0,得到端口自适應的優勢。

mono安裝過于麻煩,且等待時間長,使用jexus“獨立版”,避免安裝mono的麻煩。官方網站:https://www.jexus.org/

相關文章:

http://www.cnblogs.com/yunei/p/5662642.html

http://www.cnblogs.com/yunei/p/6077879.html

http://www.cnblogs.com/yunei/p/6215219.html

 寫完了~最後感謝jexus的作者 宇内流雲 寫出這麼好用的伺服器。