上篇文章介紹了下用vs發佈部署到iis環境,今天說下ubuntu 下部署asp.net core,不需要安裝.net core sdk,自帶運行時方式部署,利用jexus伺服器轉發請求到asp.net core. 1.部署準備環境 vmware虛擬機(其他也可以) ubuntu16.04鏡像 2.發 ...
上篇文章介紹了下用vs發佈部署到iis環境,今天說下ubuntu 下部署asp.net core,不需要安裝.net core sdk,自帶運行時方式部署,利用jexus伺服器轉發請求到asp.net core.
1.部署準備環境
vmware虛擬機(其他也可以)
ubuntu16.04鏡像
2.發佈環境
win10系統
vs2015 update3 或vs code (也可以用dotnet new -t web 命令創建項目)
dotnet sdk DotNetCore.1.0.0-SDK.Preview2-x64 下載地址 https://www.microsoft.com/net/download 自行安裝
一.首先用vs 創建一個asp.net core 應該程式名稱為 aspnetcoretest
1.打開project.json
"dependencies": {
"Microsoft.NETCore.App": {
"version": "1.0.0",
"type": "platform" //把這個節刪掉
},
修改後
"dependencies": {
"Microsoft.NETCore.App": {
"version": "1.0.0",
},
2.添加如下節點
"runtimes": {
"ubuntu.16.04-x64": {}
}
如修改後
3.去掉如下節點
"scripts": {
"prepublish": [ "bower install", "dotnet bundle" ],
"postpublish": [ "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" ]
},
4.在vs創建的項目目錄執行下 dotnet restore
5.接著執行dotnet publish -r ubuntu.16.04-x64,這裡把文件發佈到了項目目錄\bin\Debug\netcoreapp1.0\ubuntu.16.04-x64下。
6.把ubuntu.16.04-x64下的publish拷貝到ubuntu的桌面如下圖
7. 把這個publish目錄移到動/var/local/下命令如下 sudo mv publish /var/local 然後看下 publish里文件
8. 設置應該程式文件執行許可權也就是aspnetcoretest 命令 sudo chmod +x /var/local/publish/aspnetcoretest
二 安裝jexus-5.8.2
1.先進入tmp目錄: cd /tmp
2.下載jexus: wget http://www.linuxdot.net/down/jexus-5.8.2-x64.tar.gz
3.解壓文件得到jexus文件夾:tar -zxvf jexus-5.8.2-x64.tar.gz
4. 把解壓的jexus文件夾移動文件到/usr下: sudo mv jexus /usr/
5.進入/usr/jexus/目錄下看下都有什麼: cd /usr/jexus/
6.然後進入/usr/jexus/siteconf目錄下:cd siteconf
7. 用編輯器打開default配置文件:sudo vim default (編輯器自行下載)
8.添加如下節點,主要配個配置用分號隔開,不能換行。
AppHost={CmdLine=/var/local/publish/aspnetcoretest;workRoot=/var/local/publish;env=(PATH=/var/local/publish:$PATH);port=5000}
說明
CmdLine=/var/local/publish/aspnetcoretest //指向你的站點目錄的應用程式名稱如aspnetcoretest
workRoot=/var/local/publish //指向你的站點目錄即可
port=5000 //為jesux 轉發到asp.net core 的埠,因為asp.net core 預設為5000 可以改其他。
配置好後保存退出。
9.執行sudo ../jws start 命令開啟jexus 如果之前執行過可以執行sudo ../jws restart 主要我是在siteconf執行這個命令的用的是../也可以到上級目錄jexus下去執行sudo ./jws start
Jexus的常用命令:
啟動:sudo ./jws start
重啟:sudo ./jws restart
停止:sudo ./jws stop
啟動某個網站: sudo start 網站名
重啟某個網站:sudo restart 網站名
停止某個網站:sudo stop 網站名
訪問下localhsot
成功。
相互交流,共同進步。
原文地址 http://www.cnblogs.com/Dream618/p/5667203.html