Linux环境下部署.NET Core与ASP.NET Core详解
需积分: 46 182 浏览量
更新于2024-07-19
收藏 626KB DOCX 举报
"Linux部署dotnet环境,包括.net core控制台项目和asp.net core项目环境的搭建,使用nginx作为反向代理,以及通过supervisor进行进程管理。"
在Linux环境中部署.NET Core开发和运行环境是将.NET应用程序扩展到跨平台操作的重要步骤。本教程将详细介绍在Linux(CentOS 7)上配置.NET Core SDK、初始化代码、运行应用,以及如何通过Nginx进行反向代理和使用Supervisor守护进程管理的流程。
1. 文档介绍
文档目的是提供一个详细指南,用于在Linux系统中搭建.NET Core开发和运行环境,特别关注对.NET Core控制台和ASP.NET Core项目的部署。文档适用范围限于CentOS 7系统,适用于公司内部的技术人员,如开发者、运维人员等。本文档将引用Microsoft官方文档、博客文章以及技术论坛资源作为参考资料。
2. 具体步骤
2.1. 安装.NET Core SDK
首先,确保系统已经安装了必要的依赖库,如libunwind和libicu。使用以下命令安装:
```bash
sudo yum install libunwind libicu
```
然后,从Microsoft的官方仓库下载.NET Core SDK的最新版本:
```bash
curl -sSL https://aka.ms/dotnet-sdk-2.0.0-linux-x64 -o dotnet.tar.gz
```
创建一个新的目录,并将SDK解压缩至该目录:
```bash
mkdir -p /dotnet && tar zxf dotnet.tar.gz -C /dotnet
```
接下来,需要添加.NET Core的路径到系统环境变量中:
```bash
echo 'export PATH=$PATH:$HOME/dotnet' >> ~/.bash_profile
```
执行`source ~/.bash_profile`使更改立即生效。
2.2. 初始化代码
如果你已经有了.NET Core项目,可以通过FTP或其他方式将其上传到Linux服务器。如果没有,可以使用`dotnet new`命令创建一个新的控制台项目:
```bash
dotnet new console -n MyConsoleApp
cd MyConsoleApp
```
然后,构建并运行项目:
```bash
dotnet build
dotnet run
```
2.3. 安装和配置Nginx
Nginx是一款高性能的HTTP服务器和反向代理服务器,常用于负载均衡和优化Web应用性能。安装Nginx:
```bash
sudo yum install nginx
```
启动Nginx服务:
```bash
sudo systemctl start nginx
```
编辑Nginx配置文件,例如`/etc/nginx/nginx.conf`,添加反向代理规则以指向ASP.NET Core应用。例如:
```nginx
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服务:
```bash
sudo systemctl restart nginx
```
2.4. 安装和配置Supervisor
Supervisor是一个进程控制系统,可以用来管理和监控后台运行的进程。安装Supervisor:
```bash
sudo yum install supervisor
```
配置Supervisor以管理你的.NET Core应用。创建一个新的配置文件,例如`/etc/supervisord.d/myconsoleapp.ini`,内容如下:
```ini
[program:myconsoleapp]
command=/usr/bin/dotnet /path/to/your/app.dll
directory=/path/to/your/app
autostart=true
autorestart=true
user=youruser
```
更新Supervisor配置并启动应用:
```bash
sudo supervisorctl reread
sudo supervisorctl update
sudo supervisorctl start myconsoleapp
```
现在,你的.NET Core应用已经在Linux上成功部署,并由Nginx和Supervisor进行管理。
总结,这个文档提供了一套详细的步骤来帮助Linux用户部署.NET Core环境,包括.NET Core SDK的安装、项目初始化、应用运行,以及使用Nginx和Supervisor进行反向代理和进程管理。这些步骤确保了.NET Core应用在Linux环境中的稳定运行和高效管理。
870 浏览量
7156 浏览量
556 浏览量
288 浏览量
109 浏览量
105 浏览量
125 浏览量
andrew_927
- 粉丝: 10
- 资源: 55
最新资源
- opc ua客户端,opcua客户端界面,C#源码.zip
- MyMovies:在MEAN堆栈上进行的实验
- ciphermate:旨在简化简单的加密解密哈希base64任务的实用程序
- p2.mockup:设想
- carpentries-manchester:SoftwareDataLibrary曼彻斯特大学的木工活动@
- 库存品公开招标公告范例
- PHP实例开发源码—php二线小说网源码.zip
- react-Learning-roadmap
- Cap-Stone-TTP_backend
- leetcode答案-LeetCodeByPython:由Python编写的LeetCode
- automatic_ordering_system
- DrawLine
- easycal:简单的周历jQuery插件
- UDF 源项,udf源项编程问题,C,C++源码.zip
- 美的校园招聘面试官培训方案
- App:用于管理国际象棋事件的主Web应用程序