菜鸟入门【ASP.NET Core】4:在CentOS上安装.NET Core运行时、部署到CentOS

简介: 下载.NET Core SDK 下载地址:https://www.microsoft.com/net/download/windows 第一步:Add the dotnet product feed(添加dotnet产品) To start installing .

下载.NET Core SDK

下载地址:https://www.microsoft.com/net/download/windows

第一步:Add the dotnet product feed(添加dotnet产品)

To start installing .NET, you'll need to register the Microsoft signature key and add the Microsoft Product feed. This only needs to be done once per machine.Open a command prompt and run the following commands(要开始安装.NET,您需要注册微软签名密钥并添加微软产品提要。这只需要每台机器做一次。打开命令提示符并运行以下命令)

sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
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" > /etc/yum.repos.d/dotnetdev.repo'

第二步:Install the .NET SDK(安装.NET SDK)

 Update the products available for installation, install the components required by .NET, then install the .NET SDK.(更新产品可用于安装组件的安装,然后安装所需的.NET,.NET SDK。)

sudo yum update
sudo yum install libunwind libicu
sudo yum install dotnet-sdk-2.0.2

安装完成之后我们可以执行dotnet控制台命令来创建dotnet项目了

 

创建core项目

 在命令行执行 dotnet new --help 命令查看创建帮助

 然后执行 dotnet new webapi -n helloCore 创建webapi项目

 

执行 cd helloCore命令进入helloCore文件夹

执行 dotnet run 运行webapi,可以看到现在webapi运行在5000端口

这时候访问http://192.168.110.129:5000/无法访问,原因是端口没有打开

这时候程序已经运行了,不可能说停止服务之后再去打开,然后再重新启动

这里我们的做法是再重启一个PuTTy

然后执行 curl http://localhost:5000/api/values查看api是否可以访问

 

将helloVS项目部署到CentOS

发布之前vs创建的helloVS项目到文件夹,然后我们需要借助一个 FileZilla 工具将文件上传到CentOS上面

在远程站点输入 \home 访问home文件夹,然后再home文件夹下创建netcore文件夹

 

 然后选择发布的文件夹,将文件夹内的文件全部上传上去

 

传输完成后我们继续使用PuTTy软件查看文件是否上传成功

 

这时候执行dotnet helloVS.dll运行我们发布的内容

遇到以上问题的解决方法:

 说明现在的平台上的dotnet SDK不是2.0.3的,执行以下命令即可:

sudo yum install dotnet-sdk-2.0.3

安装完成后,再次运行helloVS.dll

 

用PuTTy访问5000端口curl http://localhost:5000

这里可以看到网站已经可以访问了

Nginx映射端口

进入nginx安装目录 cd /etc/nginx

查看nginx.conf

可以看到默认是吧所有的*.conf文件引入进来的

刚开始有默认的80端口的配置,我们要把它注释掉

注释后

这时候进入conf.d文件夹发现里面并没有任何文件

 

这时候我们创建一个netcore.conf文件,将80端口对5000对口进行转发

 

复制代码
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;
    }
}
复制代码

 配置完成之后执行 nginx -s reload 或者 systemctl restart nginx 进行重启nginx

然后访问80端口

这时候访问发现有可能报502,找了很久才找到解决办法

原因:SELinux配置问题。 
解决:关闭SELinux。 
输入:sestatus,如果SELinux status: enabled ,表示开启,输入vi /etc/selinux/config 修改配置:SELINUX=disabled。 

或者

CentOS: 将NGINX加到SELinux的允许名单

 

yum install policycoreutils-python 

cat /var/log/audit/audit.log | grep nginx | grep denied | audit2allow -M mynginx 

semodule -i mynginx.pp 

 然后重启CentOS

 

相关文章
|
12月前
|
JSON 数据格式
【Azure Fabric Service】演示使用PowerShell命令部署SF应用程序(.NET)
本文详细介绍了在中国区微软云Azure上使用Service Fabrics服务时,通过PowerShell命令发布.NET应用的全过程。由于Visual Studio 2022无法直接发布应用,需借助PowerShell脚本完成部署。文章分三步讲解:首先在Visual Studio 2022中打包应用部署包,其次连接SF集群并上传部署包,最后注册应用类型、创建实例并启动服务。过程中涉及关键参数如服务器证书指纹和服务端证书指纹的获取,并附带图文说明,便于操作。参考官方文档,帮助用户成功部署并运行服务。
363 73
|
10月前
|
Linux 应用服务中间件 nginx
在CentOS上部署Minikube教程
至此,您已成功在CentOS上部署并使用Minikube。您可以自由探索Kubernetes的世界,熟练配置和管理Kubernetes集群。
896 20
|
监控 前端开发 Linux
centos7系统安装部署zabbix5.0
【9月更文挑战第23天】在CentOS 7系统上部署Zabbix 5.0的步骤包括:安装MariaDB数据库及必要软件包,配置Zabbix仓库,设置数据库并导入Zabbix数据库架构,配置Zabbix服务器与前端参数,启动相关服务,并通过浏览器访问Web界面完成安装向导。
1266 0
|
人工智能
D1net阅闻 | 奥特曼:把期望降低100倍,OpenAI下月不会部署AGI
D1net阅闻 | 奥特曼:把期望降低100倍,OpenAI下月不会部署AGI
|
人工智能 自动驾驶 机器人
D1net阅闻|国务院国资委部署深化中央企业“AI+”专项行动
D1net阅闻|国务院国资委部署深化中央企业“AI+”专项行动
|
开发框架 监控 .NET
【Azure App Service】部署在App Service上的.NET应用内存消耗不能超过2GB的情况分析
x64 dotnet runtime is not installed on the app service by default. Since we had the app service running in x64, it was proxying the request to a 32 bit dotnet process which was throwing an OutOfMemoryException with requests >100MB. It worked on the IaaS servers because we had the x64 runtime install
343 5
|
Oracle 关系型数据库 MySQL
Centos7下图形化部署单点KFS同步工具并将Oracle增量同步到KES
Centos7下图形化部署单点KFS同步工具并将Oracle增量同步到KES
Centos7下图形化部署单点KFS同步工具并将Oracle增量同步到KES
|
监控 网络安全 调度
Quartz.Net整合NetCore3.1,部署到IIS服务器上后台定时Job不被调度的解决方案
解决Quartz.NET在.NET Core 3.1应用中部署到IIS服务器上不被调度的问题,通常需要综合考虑应用配置、IIS设置、日志分析等多个方面。采用上述策略,结合细致的测试和监控,可以有效地提高定时任务的稳定性和可靠性。在实施任何更改后,务必进行充分的测试,以验证问题是否得到解决,并监控生产环境的表现,确保长期稳定性。
1263 1
|
监控 安全 API
Docker + .NET API:简化部署和扩展
Docker + .NET API:简化部署和扩展
201 1
|
存储 Linux 开发者
虚拟机centos7.9一键部署docker
本文介绍了如何在 CentOS 7.9 虚拟机上安装 Docker 社区版 (Docker-ce-20.10.20)。通过使用阿里云镜像源,利用 `wget` 下载并配置 Docker-ce 的 YUM 仓库文件,然后通过 `yum` 命令完成安装。安装后,通过 `systemctl` 设置 Docker 开机自启并启动 Docker 服务。最后,使用 `docker version` 验证安装成功,并展示了客户端与服务器的版本信息。文中还提供了列出所有可用 Docker-ce 版本的命令。
2903 0
虚拟机centos7.9一键部署docker