CentOS7部署.Net Core2.0站点(上)
其实类似的教程网上已经有很多了,之所以要写,是应为发现在使用最新的centos7和.netcore2.1版本时还是遇到了不少坑,所以记录下,以后希望大家能少走弯路。
一、安装CentOS7
我是用虚拟机vmware安装的,安装教程百度上很多,也不是本篇的重点,请大家自行百度就可以了,这个还是比较简单的。
二、安装.net core sdk
可以参考微软给出的官方文档https://www.microsoft.com/net/learn/get-started/linux/centos,这里有个坑,如果按官方文档装完后会出现版本依赖关系不兼容的bug,如下:
[root@localhost conf.d]# dotnet --info
Failed to resolve library symbol hostfxr_main_startupinfo, error: /usr/share/dotnet/host/fxr/2.0.6/libhostfxr.so: undefined symbol: hostfxr_main_startupinfo
.NET Command Line Tools (2.1.104)
不过github上面已经给出了解决方案,就是安装时在第二条命令中加入nexclude=*preview*" 这段,更改后的命令如下:
sudo sh -c 'echo -e "[packages-microsoft-com-prod]\nname=packages-microsoft-com-prod \nbaseurl=https://packages.microsoft.com/yumrepos/microsoft-rhel7.3-prod\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc\nexclude=*preview*" > /etc/yum.repos.d/dotnetdev.repo'
成功完成安装后,执行dotnet --info命令,显示如下:
[root@localhost conf.d]# dotnet --info
.NET Command Line Tools (2.1.104) Product Information:
Version: 2.1.104
Commit SHA-1 hash: 48ec687460 Runtime Environment:
OS Name: centos
OS Version: 7
OS Platform: Linux
RID: centos.7-x64
Base Path: /usr/share/dotnet/sdk/2.1.104/ Microsoft .NET Core Shared Framework Host Version : 2.0.6
三、创建ASP.NET CORE应用程序
在vs2017中创建一个名为“MyCoreWebApp”的Asp.net Core应用程序,修改Program.cs文件,添加被监听的url和端口,如下:

编译后已文件系统的方式发布,接下来需要设置centos防火墙,命令如下:
sudo firewall-cmd --permanent --zone=public --add-port=22/tcp
sudo firewall-cmd --permanent --zone=public --add-port=5000/tcp
sudo firewall-cmd --reload
使用xftp(需要防火墙开放端口号22,如上)将windows上的发布文件传到centos的/home/wwwroot/MyWeb目录下,

启动.net core应用程序,命令如下
[root@localhost wuyi]# cd /home/wwwroot/MyWeb/
[root@localhost MyWeb]# dotnet MyCoreWebApp.dll
Hosting environment: Production
Content root path: /home/wwwroot/MyWeb
Now listening on: http://[::]:5000
Application started. Press Ctrl+C to shut down.
在centos中打开火狐浏览器,输入http://localhost:5000即可访问

如果想在外部系统访问,可以输入命令"ip addr"来查看ip,如下

在我本机windows中打开浏览器,输入http://192.168.195.128:5000 也可以访问成功。

至此,已完成了.net core在centos上的部署和访问,后续会继续尝试些扩展内容如负载均衡和配置守护进程等。
CentOS7部署.Net Core2.0站点(上)的更多相关文章
- CentOS7部署.Net Core2.0站点(中)
继续上篇的内容,本篇来学习下nginx的配置和守护进程supervisor的使用. 一.Nginx安装及配置 (1)安装nginx sudo yum install epel-release #添加源 ...
- Centos7.2部署.Net Core2.0 WebApi
部署前准备 1.VisualStudio2017+.netcore2.0SDK 2.Centos7.2 3.SecureCRT,Xftp(根据自己喜好) 创建WebApi项目 修改Program.cs ...
- CentOS7部署Dotnet Core2.1
前言 笔者在毫无Linux部署.net core的经验下,第一次用了15分钟完成部署,第二次在生产环境用了5分钟.下文将说明如何在CentOS7下完成.NetCore2.1的部署,包括如何创建ASP. ...
- DotNet跨平台 - docker部署.net core2.0项目
参考文档: https://docs.docker.com/install/linux/docker-ce/centos/ http://www.dockerinfo.net/document htt ...
- Centos7 部署.net core2.1 详细步骤
安装dotnet sdk(添加产品秘钥与yum源) 添加yum源:sudo rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages ...
- CentOS7部署HDP3.1.0.0
Apache Ambari是一个基于Web的支持Apache Hadoop集群的供应.管理和监控的开源工具,Ambari已支持大多数Hadoop组件,包括HDFS.MapReduce.Hive.Pig ...
- 云服务器 Centos7 部署 Elasticsearch 8.0 + Kibana 8.0 指南
文章转载自:https://mp.weixin.qq.com/s/iPfh9Mkwxf5lieiqt6ltxQ 服务器是命令行模式登录,没法以浏览器方式访问.而官方推荐的快捷部署方式,在kibana ...
- centos7部署.net core2.1
1.centos 7.0及以上服务器 2..NET SDK 安装 2.1 安装 https://www.microsoft.com/net/download/linux-package-manager ...
- Centos7 系统下搭建.NET Core2.0+Nginx+Supervisor+Mysql环境
好记性不如烂笔头! 一.简介 一直以来,微软只对自家平台提供.NET支持,这样等于让这个“理论上”可以跨平台的框架在Linux和macOS上的支持只能由第三方项目提供(比如Mono .NET).直到微 ...
随机推荐
- pageadmin建站软如何修改和设置iis站点应用程序池
很多用户第一次安装PageAdmin建站系统时候会出现这个错误,主要原因: 1.首选打开iis站点基本设置,可以看到当前站点对应的应用程序池,如下图: 可以看到当前站点用的程序池名为MyAppPool ...
- elk日志分析平台安装
ELK安装 前言 什么是ELK? 通俗来讲,ELK是由Elasticsearch.Logstash.Kibana 三个开源软件的组成的一个组合体,这三个软件当中,每个软件用于完成不同的功能,ELK 又 ...
- AcWing 153. 双栈排序
https://www.acwing.com/problem/content/155/ #include <cstring> #include <iostream> #incl ...
- Notepad++给自己打造一款PowerQuery M语言编辑器【转】
Excel 使用Notepad++给自己打造一款PowerQuery M语言编辑器 Excel 使用Notepad++给自己打造一款PowerQuery M语言编辑器-Power BI-ExcelHo ...
- 洛谷T46780 ZJL 的妹子序列(生成函数)
题面 传送门 题解 这居然是一道语文题? 首先不难看出,因为每一次相邻元素交换最多减少一个逆序对,所以至少\(m\)次交换就代表这个序列的逆序对个数为\(m\) 我们考虑一下,假设现在已经放完了\(i ...
- freemarker模板跟java代码放在一起
在配置 freemarkerConfig时加上 <property name="templateLoaderPath" value="classpath:hello ...
- 阿里java开发规范学习(附P3C IDEA插件 帮助规范的养成)
浅析 阿里巴巴 Java 开发规约 (未完成) 更加优秀的页面展现请到浅析 阿里巴巴 Java 开发规约 contents 为什么要学 编程规约 P3C IDEA 插件 why-use 我们知道,一般 ...
- scrollto 到指定位置
goTo = function(target){ var scrollT = document.body.scrollTop|| document.documentElement.scrollTop ...
- The model backing the 'XXX' context has changed 错误
https://blog.csdn.net/hit_why/article/details/72778785 https://blog.csdn.net/hit_why/article/details ...
- C# 文件读写Helper类
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.I ...