Abp(.NetCore)开发与发布过程3-部署Ubuntu站点_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > Abp(.NetCore)开发与发布过程3-部署Ubuntu站点

Abp(.NetCore)开发与发布过程3-部署Ubuntu站点

 2017/8/9 16:31:20  Movieatravelove  程序员俱乐部  我要评论(0)
  • 摘要:以下是笔者在Ubuntu16.0-64bit环境下发布ABP(.NetCore)的全过程。特此记录,希望对大家有所帮助。准备的工具1.PuTTY(ssh,如果不想每次都用阿里云的远程登录,那么可以试试这个。)2.WinSCP(图形化SFTP客户端,美观又好用)3.Ubuntu16.0-64bitStep1搭建.NetCore运行环境1)添加dotnetapt-get支持文件(Ubuntu16.04/LinuxMint18环境)sudosh-c'echo"deb[arch=amd64]https
  • 标签:.net Ubuntu net 发布 过程 开发

以下是笔者在 Ubuntu 16.0-64bit 环境下 发布 ABP(.NetCore)的全过程。特此记录,希望对大家有所帮助。

准备的工具

1.PuTTY(ssh,如果不想每次都用阿里云的远程登录,那么可以试试这个。)

2.WinSCP(图形化SFTP客户端,美观又好用)

3.Ubuntu 16.0-64bit

    


 

Step 1  搭建 .NetCore运行环境 

   1)添加 dotnet apt-get 支持文件(Ubuntu 16.04 / Linux Mint 18环境)

class="brush:csharp;gutter:true;">sudo sh -c 'echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/dotnet-release/ xenial main" > /etc/apt/sources.list.d/dotnetdev.list'
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys B02C46DF417A0893
sudo apt-get update

    2)安装 .NET Core SDK

sudo apt-get install dotnet-dev-1.0.4

 

  检验安装结果: 运行 dotnet 后如果是如下结果,则说明安装成功

dotnet

 

Step 2  发布项目

习惯用命令行 发布项目(不知道什么时候养成的怪癖)  在项目的根目录里,有一个build文件夹,进入此文件夹,运行  build-mvc.ps1

   

cd C:\Users\Zac\Desktop\YourProductName\build
.\build-mvc.ps1

 

等待发布完成. . .  会发现生成了一个outputs文件夹,发布生成的文件全部打包至了Mvc文件夹中。

(up.ps1 和 down.ps1 是在需要发布到Docker容器中时使用的ps脚本。)

至此 发布工作已结束。

特别要注意:

当你的项目需要远程链接数据库时,请先配置好数据库服务器(包括登录用户权限设置,TCP UDP 开放端口设置。默认TCP端口1433,UDP端口1434,如果防火墙启动,需要将sqlserver.exe添加到允许列表阿里云安全组设置等等...全是踩过的坑)

其次,注意配置好连接字符串,在 appsettings.json 中。

  "ConnectionStrings": {
    "Default": "Data Source=xx.xx.xx.xx; Initial Catalog=YourDB; User Id=sa; password=yourpassword; MultipleActiveResultSets=True;"
  },

 

 

以下两种是错误的链接字符串配置:

"ConnectionStrings": {
    "Default": "Server=xx.xx.xx.xx; Database=YourDb; User=zac; Password=123qwe;"
  },

 

"ConnectionStrings": {
     "Default": "Data Source=xx.xx.xx.xx\/YourDb; User=zac; Password=123qwe;"
  },

 

在连接字符串错误的情况下,运行项目将导致以下错误发生:

Unhandled Exception: System.NotSupportedException: The keyword 'integrated security' is not supported on this platform.

 

 


 

Step 3  复制发布文件至服务器

之前提到的WinSCP该派上用场了。(WinSCP下载链接) 

   1)打开 WinSCP 链接至你的服务器。

  如图,左边是本地文件资源,右边是服务器文件资源。支持在文件夹中拖拽上传文件。

   2)将上一步发布的文件夹(MVC)上传至服务器。

  如图所示,已经将所有生成的文件都上传至build文件夹下。


 

Step 4  运行

进入项目入口所在的文件夹(例如,你的项目名称为 MyProduct,那么运行的文件应该就是 MyProduct.Web.Mvc.dll,完整的路径就是 root/zac/Mvc/build/MyProduct.Web.Mvc.dll  Linux下路径是区分大小写的

cd  zac/Mvc/build

 

运行 MyProduct.Web.Mvc.dll

dotnet MyProduct.Web.Mvc.dll

如果一切顺利的话,输出如下

一切OK 访问一下你的网站吧!(先别急,看看你的阿里云安全组有没有开发相应的端口。)

 


 

其他

.NetCore安装参考网址,https://www.microsoft.com/net/core#centos

.NetCore下载地址,https://www.microsoft.com/net/download#core

发表评论
用户名: 匿名