在Centos7下发布.NET CORE项目[转]

1.安装安装前准备开发环境

编译类库:yum -y install gcc make gcc-c++ openssl-devel

系统信息:

CentOS Linux release 7.2.1511 (Core)

Kernel: Linux 3.10.0-327.el7.x86_64

2.安装SDK过程

安装libunwind

#yum install libunwind

安装libicu

#yum install libicu

下载dotnet.tar.gz文件。在线下载安装命令:curl -sSL -o dotnet.tar.gz https://go.microsoft.com/fwlink/?LinkID=827529

下载成功后进行安装,安装命令:mkdir -p /opt/dotnet && sudo tar zxf dotnet.tar.gz -C /opt/dotnet

执行命令后,安装成功。

输入dotnet命令可查看到相关的命令使用方法。

#dotnet –verion 查看dotnet的版本信息。

 

安装SDK或者部署过程可参考微软官方的步骤。

该截图安装SDK步骤是官方提供的。

 

3.执行Dotnet Restore命令

 

通过ftp工具(FileZilla)将整个项目文件夹上传到linux服务器中。

在服务器下输入cd /usr/local/wwwroot/进入到目录下可查看到上传文件夹demo,如果该文件夹没有操作操作权限可进行授权。

进入到demo目录执行命令:

#dotnet restore

dotnet restore主要是做了:寻找当前目录下的项目文件(project.json),然后利用NuGet库还原整个项目的依赖库,然后遍历每个目录,生成项目文件,继续还原该项目文件中的依赖项。

4.执行Dotnet Publish命令

执行dotnet publish命令,进行发布,当然也可以在发布之前,修改配置文件,例如修改数据库连接配置,找到相关的json配置文件,修改配置保存再进行发布。

我们可以使用more appsettings.json命令查看数据库的连接配置信息,如果需要修改输入vi appsettings.json命令进行编辑文件,修改数据库信息。

发布成功。

6.执行Dotnet Run命令

发布成功后,需要执行dotnet run命令,运行启动站点,可从Now Listening on :http://10.190.190.78.5000看出该站点的访问url地址。

7.访问发布站点

在浏览器下,访问站点成功。

在服务器后台可看到处理信息。

7.在firewall下添加站点端口

 

输入添加端口命令:

#firewall-cmd --zone=public--add-port=5000/tcp –permanent  #添加5000端口

#firewall-cmd –reload   #重载firewall

 
输入firewall-cmd --list-all查看防火墙所有开放的端口。

#firewalld-cmd --list-all

8.附录

8.1运行dotnet publish提示npm错误

当出现该错误时,因为.NET CORE的jquery和bootstrap的加载是通过bower的,而bower是需要npm的,所以需要安装nodejs,Nodejs中包含了npm包。

安装nodejs有两种方式,其中一种是使用在线安装方式,另外一种是使用源码安装方式。

Yum在线安装方式

输入命令:curl --silent --location https://rpm.nodesource.com/setup_4.x|bash -

在线安装之前需要输入一下命令,才能使用yum进行安装nodejs,安装命令:yum install nodejs

 

可根据需求,安装不同版本:

Run as root on RHEL, CentOS or Fedora, forNode.js v4 LTS Argon:

curl --silent --location https://rpm.nodesource.com/setup_4.x|bash -

Alternatively for Node.js v6:

curl --silent --location https://rpm.nodesource.com/setup_6.x |bash -

Alternatively for Node.js 0.10:

curl --silent --location https://rpm.nodesource.com/setup |bash -

输入后输入在线安装命令。 yum install nodejs

安装成功后,输入node –v或npm –v查看版本命令。


源码安装模式:

下载源码吗后,上传到服务器中。

#chmod 766 node-v4.5.0.tar.gz       #修改文件操作权限

#tar -zxvf node-v4.5.0.tar.gz          #解压文件

 

安装配置之前需要先在线下载编译时依赖的类库。

下载命令:yum install gcc make gcc-c++ openssl-devel
 
 

执行./configure命令

编译,并且安装。

8.2运行dotnet publish提示bowser和gulp

 

当安装完nodejs后,再次运行dotnet publish命令后,又出现错误提示。需要再次进行bower和gulp安装。

输入安装命令:

#npm install -g bower            #-g表示全局安装

#npm install -g gulp

 

 

如果遇到bower ESUDO Cannot be run with sudo的提示,则是你用root权限执行,bower默认不允许以root权限执行命令。那么就带上一个参数–allow-root,如下:

bower install --allow-root

 

查看gulp和bower版本。请注意必须安装过npm才能进行安装bower和gulp。

 

8.3官方部署DOTNET CORE项目指南

 

请参考微软官方指南:

https://www.microsoft.com/net/core#centos

posted @ 2018-04-12 14:40  jimcsharp  阅读(223)  评论(0编辑  收藏  举报