CentOS 7下发布.net core 2.0 过程

1 准备:

1.1 VM下CentOS 7 安装并配置网络

见VM下CentOS 7 安装并配置网络
当前安装完成后,我的IP为192.168.17.128,如图
这里写图片描述
1.2 准备环境

1.2.1 下载Jexus专业版并部署

下载网址:https://www.jexus.org/ 约22M
这里写图片描述

该版本自带.net运行时(mono),不需要在客户服务器安装mono就能正常运行的Jexus版本,该版本只支持 64位Linux操作系统。

第1步:用WinSCP工具把下载的文件拷贝到CentOS 根目录的tools文件中(个人习惯)
注:WinSCP 的安装和使用,请参考百度
这里写图片描述
第2步:利用XShell模拟CentOS服务器的终端
注:XShell的安装和使用,请参考百度
解压jexus到opt/jexus5.8.3目录下,命令:

tar -xzvf /tools/jexus-5.8.3-x64.tar.gz -C /opt/jexus5.8.3/

这里写图片描述
1.2.2 下载并安装Core2.0 SDK
下载网址:https://www.microsoft.com/net/download/linux ,SDK约139M
这里写图片描述
第1步:与Jexus一样,用WinSCP把文件拷贝到CentOS的/tools/下
这里写图片描述
第2步:在XShell中解压SDK到/opt/core2.0.3/,命令:

tar -xzvf /tools/dotnet-sdk-core-2.0.3-linux-x64.tar.gz -C /opt/core2.0.3/

这里写图片描述

2. Windows下搭建一个简单的DotNet Core2.0工程

**
第1步:用visual studio2017 15.4.3或者更高版本新建一个Core2.0工程
这里写图片描述
第2步:新建工程
这里写图片描述
这里写图片描述
第3步:View层随便写了一些示例代码,循环5行数据
这里写图片描述
第4步:注意你的工程文件.csproj,用记事本打开在PropertyGroup节点加上如下代码:
false

这样发布工程时就不会把View层的代码打包到dll中,方便前端修改。
这里写图片描述
第5步:在vs中发布工程到本地磁盘
发布后的结果如下
这里写图片描述
第6步:验证工程是否可以运行
在CMD中切换到发布的目录,执行命令:

dotnet ASPCore2.dll

如果出现如下图所示表明发布成功,
这里写图片描述
可以测试一下 localhost:5000
这里写图片描述

3. 发布到CentOS,并启动服务

第1步:用WinSCP拷贝至CentOS系统中的/var/www/qa/ 中
这里写图片描述
第2步:在CentOS中测试是否可以运行:
在Xshell中执行:/opt/core2.0.3/dotnet /var/www/qa/ASPCore2.dll
这里写图片描述
结果没有问题,在CentOS中用火狐浏览器打开 http://localhost:5000,测试一切正常。

4.配置Jexus并随系统启动

第1步:配置jexus站点
在Xshell中切换到jexus目录下的siteconf中,
这里写图片描述
第2步:打开default文件并编辑
命令:vi default 编辑完成后保存退出
这里写图片描述
其中 AppHost项配置站点随系统启动而启动,可以放到站点一切正常后再配置,避免引起冲突等问题, 手工启动站点,命令:

/opt/jexus5.8.3/jexus/jws start

执行命令:

cd /etc/init.d/
vi jws

编辑粘贴如下脚本代码并保存

#!/bin/bash
#chkconfig: 2345 80 05
#description:jws
#
. /etc/rc.d/init.d/functions

case "$1" in
start)
  echo "Jexus Start.."
  /opt/jexus5.8.3/jexus/jws start
  ;;
stop)
  echo "Jexus Stop.."
  /opt/jexus5.8.3/jexus/jws stop
  ;;
restart)
  echo "Jexus Restart"
  /opt/jexus5.8.3/jexus/jws restart
  ;;
status)
  /opt/jexus5.8.3/jexus/jws status
  ;;
*)
  exit 1
  ;;
esac
exit $RETVAL

保存并退出后将该脚本注册到服务中

chmod 766 /etc/rc.d/init.d/jws
chkconfig –add /etc/rc.d/init.d/jws

第3步:启动成功后,在CentOS和其他电脑上即可成功浏览该网站。
注:防火墙需要开启80端口的访问权限,当然可以关闭防火墙,关闭和禁用命令:
systemctl stop firewalld.service
systemctl disable firewalld.service
在CentOS之外输入网址,浏览正常
这里写图片描述

 

铸剑团队签名:

【总监】十二春秋之,3483099@qq.com

【Master】戈稻不苍,han169@126.com

【Java开发】雨鸶,343691194@qq.com;思齐骏惠,qiangzhang1227@163.com;小王子,545106057@qq.com;巡山小钻风,840260821@qq.com

【VS开发】豆点,2268800211@qq.com

【系统测试】土镜问道,847071279@qq.com;尘子与自由,695187655@qq.com

【大数据】沙漠绿洲,caozhipan@126.com;张三省,570417591@qq.com

【网络】夜孤星,11297761@qq.com

【系统运营】三石头,261453882@qq.com;平凡怪咖,591169003@qq.com

【容灾备份】秋天的雨,18568921@qq.com

【安全】保密,你懂的。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 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、付费专栏及课程。

余额充值