HTML5技术

ASP.NET Core:部署项目到Ubuntu Server - 王杰光(2)

字号+ 作者:H5之家 来源:H5之家 2017-05-07 18:01 我要评论( )

cd / varsudo mkdir netcorecd netcoresudo mkdir test - publishcd test - publishsudo cp -a /home/jack/test/bin/Debug/netcoreapp1.1/publish/* /var/netcore/test-publish ls 5、创建test.conf的supervisor配

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

5、创建test.conf的supervisor配置文件,并将以下内容添加进去(一定要仔细不要手抖写错了)

cd /etc/supervisor/conf.d sudo vim test.conf

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

注:第一条命令表示所有端口默认关闭,除非被指定打开。至于红框内的,就不用我过多解释了吧(笑而不语~)。

3、打开Putty,输入Ubuntu Server的IP地址,端口为22,连接类型为SSH,你可以把这个配置保存下来,命名为:ubuntu即可,下次直接双击打开就行了,挺方便的。

4、出现下面这个提示时,选择“是”即可

5、然后输入服务器的用户名和密码进行登录,如果没问题,你会看到如下画面

5、小试牛刀:打开windows的命令提示窗口,输入以下命令,表示复制一个test.txt(E盘下)文件到ubuntu服务器上test文件夹下

pscp test.txt jack@192.168.1.105:test

随后切换至Putty上进行查看

6、重新发布我们的项目,指定runtime为ubuntu.16.10-x64,如需更多,请点击这里进行查看。

dotnet publish --framework netcoreapp1.1 --runtime ubuntu.16.10-x64 --output --configuration Release

但是不幸的是出现了一个大大的报错:“project.assets.json don't have a target for  ‘.NETCoreApp,Version=v1.1/ubuntu.16.10-x64’”,网上一查,发现是项目文件csproj中没有此依赖,添加之后重新运行发布命令,如果出现最后一个画面,说明你就成功了!

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

同时将我们的监听端口设置为6000,否则的话将无法启动,因为5000端口已经被测试项目test占用了。而其中的UseIISIntegration方法可以拿掉,因为我们是要发布到Ubuntu服务器上,用不着IIS,但是这样的话你的本机也将会无法访问。

7、到了最重要的一环:使用PSFTP,主要命令为open和put,将我们刚才发布的Light.Api项目Copy到Light.Api-Publish下,你会看到很多的复制记录

8、复制完成之后,切换到服务器的该目录下,如果能启动,说明没问题

9、接下来就不用多说了,Ctrl+Art+F2切换到第二个管理页面,把nginx的监听端口改成6000并重启nginx

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • 从零开始构建一个的asp.net Core 项目(一) - 你好世界_qu

    从零开始构建一个的asp.net Core 项目(一) - 你好世界_qu

    2017-05-07 10:29

  • Dora.Interception: 一个为.NET Core度身定制的AOP框架 - Artech

    Dora.Interception: 一个为.NET Core度身定制的AOP框架 - Artech

    2017-05-02 11:00

  • 如何在 ASP.NET Core 中发送邮件 - Savorboard

    如何在 ASP.NET Core 中发送邮件 - Savorboard

    2017-05-02 08:02

  • 十二个 ASP.NET Core 例子 - Savorboard

    十二个 ASP.NET Core 例子 - Savorboard

    2017-04-27 16:01

网友点评