在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





  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Centos7发布说明 环境说明: 服务器系统:CentOS 7.2.1511 相关工具:Xshel、Xftp 服务器软件软件:.netcore、nginx、supervisor 准备好发布的程序 安装.NET Core SDK for CentOS7 打开网址:https://www.microsoft.com/net/core#linuxcentos 复制如下命令,单步执行: sudo yum install libunwind libicu curl -sSL -o dotnet.tar.gz https://go.microsoft.com/fwlink/?LinkID=835019 sudo mkdir -p /opt/dotnet && sudo tar zxf dotnet.tar.gz -C /opt/dotnet sudo ln -s /opt/dotnet/dotnet /usr/local/bin 输入 dotnet –info 来查看是否安装成功 配置Nginx 下载安装Nginx,单步执行如下命令: curl -o nginx.rpm http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm rpm -ivh nginx.rpm yum install nginx systemctl start nginx 来启动nginx systemctl enable nginx 来设置nginx的开机启动(linux宕机、重启会自动运行nginx不需要连上去输入命令)。 配置防火墙 命令:firewall-cmd --zone=public --add-port=80/tcp --permanent(开放80端口) 命令:systemctl restart firewalld(重启防火墙以使配置即时生效) 测试nginx是否可以访问。 配置nginx对ASP.NET Core应用的转发 修改 /etc/nginx/conf.d/default.conf 文件,将文件内容替换为: server { listen 80; location / { proxy_pass http://localhost:5000; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection keep-alive; proxy_set_header Host $host; proxy_cache_bypass $http_upgrade; } }

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值