.net Core 部署到 Linux 笔记

1、环境说明:

服务器系统:CentOS 7.4  64位

相关工具:Xshel、Xftp

.net Core版本:3.1

VS版本:2019

服务器软件软件:.netcore、nginx、

 

2.环境安装.NET Core SDK

命令一:sudo yum update

命令二:sudo yum install libunwind libicu

命令三:sudo yum install dotnet-sdk-3.1.0

使用命令 dotnet --info 查看是否安装成功

通过xftp,将发布好的文件上传至服务器

dotnet  xxxxx.dll  查看是否正常启动

 

2.安装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不需要连上去输入命令)。

修改 /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;
}
}

执行:sudo nginx -s reload 使其即时生效

3.添加系统守护进程

sudo  /etc/systemd/system/kestrel-test.service

增加内容:

[Unit]
Description=Example .NET Web App running on centos

[Service]
WorkingDirectory=/root/netCoreTest
ExecStart=/usr/bin/dotnet /root/netCoreTest/WebApplication1.dll
Restart=always
# Restart service after 10 seconds if the dotnet service crashes:
RestartSec=10
KillSignal=SIGINT
SyslogIdentifier=dotnet-example
User=root
Environment=ASPNETCORE_ENVIRONMENT=Production
Environment=DOTNET_PRINT_TELEMETRY_MESSAGE=false

[Install]
WantedBy=multi-user.target

启用服务:

systemctl enable kestrel-test.service  启用

systemctl start kestrel-test.service 启动

systemctl status kestrel-test.service  运行状态

sudo journalctl -fu kestrel-test.service 查看日志

### 回答1: 要将ASP.NET Core部署Linux,您需要执行以下步骤: 1. 安装.NET Core运行时环境:在Linux上安装.NET Core运行时环境,以便您的应用程序可以在Linux上运行。 2. 编译应用程序:使用.NET Core CLI编译您的ASP.NET Core应用程序。 3. 配置Web服务器:选择一个Web服务器,例如Nginx或Apache,并配置它以便它可以将请求转发到您的应用程序。 4. 部署应用程序:将编译的应用程序和所有依赖项复制到Linux服务器上,并启动应用程序。 5. 测试应用程序:使用浏览器或命令行工具测试您的应用程序是否在Linux上运行正常。 请注意,部署ASP.NET Core应用程序到Linux可能需要一些额外的配置和调试,因此建议您在开始之前仔细阅读官方文档和相关教程。 ### 回答2: ASP.NET Core 是一种跨平台的 Web 开发框架,可以在 Windows、Linux 和 macOS 上运行。本篇文章将介绍将 ASP.NET Core 部署Linux 上的过程。 首先,需要准备一台 Linux 服务器,可以选择云服务器或者本地虚拟机。在服务器上需要安装 .NET Core 运行时环境,可以参考 Microsoft 官方文档进行安装,一般需要执行以下命令: ``` sudo apt-get update sudo apt-get install dotnet-sdk-3.1 ``` 安装完成后,需要编写 ASP.NET Core 应用程序,并将其打包成可执行文件。 在 Visual Studio 或者 Visual Studio Code 中创建 ASP.NET Core 项目,然后选择“发布”选项,可以选择将项目发布到文件夹或者直接打包成可执行文件。如果选择打包成可执行文件,可以使用以下命令: ``` dotnet publish -c Release -r linux-x64 ``` 其中,linux-x64 表示将程序打包成针对 Linux 的 64 位版本,如果需要打包成其他版本,可以参考 Microsoft 官方文档进行修改。 打包完成后,需要将程序上传到 Linux 服务器上。可以使用 SSH 或者 FTP 等方式进行上传。上传完成后,在 Linux 中,需要给可执行文件添加可执行权限,使用以下命令: ``` chmod +x [可执行文件名] ``` 接着,进入程序所在的文件夹并启动程序,使用以下命令: ``` cd [程序所在的文件夹] ./[可执行文件名] ``` 程序启动后,可以使用浏览器访问 Linux 服务器的 IP 地址和端口号来访问 ASP.NET Core 应用程序。 需要注意的是,如果应用程序需要连接数据库等外部服务,需要在 Linux 服务器上安装相应的数据库和服务,并进行配置。此外,需要在 Linux 服务器上配置防火墙规则,允许外部访问 ASP.NET Core 应用程序所在的端口。 总结起来,将 ASP.NET Core 部署Linux 上需要完成以下步骤: 1. 安装 .NET Core 运行时环境; 2. 编写 ASP.NET Core 应用程序,并将其打包成可执行文件; 3. 将可执行文件上传到 Linux 服务器,并添加可执行权限; 4. 启动应用程序,并配置相应的数据库和服务; 5. 配置防火墙规则允许外部访问 ASP.NET Core 应用程序。 以上就是 ASP.NET Core 部署Linux 的过程,通过这种方式,可以更好地实现跨平台的 Web 开发。 ### 回答3: ASP.NET Core 是一种跨平台的开发框架,用于构建 Web 应用程序。ASP.NET Core 带有多种选项,其中之一是将开发的 ASP.NET Core 应用程序部署Linux 上。以下是 ASP.NET Core 部署Linux 的过程。 一、在 Linux 上安装 ASP.NET Core 和运行环境 首先,需要在 Linux 中安装 .NET Core 运行时环境和 ASP.NET Core。在 Linux 上, .NET Core 支持 RHEL、Ubuntu、Debian、CentOS、Fedora 和 Linux Mint 等主要发行版。 二、将 ASP.NET Core 应用程序打包为 Linux 适用的发布包 要将 ASP.NET Core 应用程序打包为 Linux 适用的发布包,需要打开终端并切换到 ASP.NET Core 项目源目录。然后使用“dotnet publish”命令生成发布包。 三、将发布包复制到 Linux 服务器 将应用程序的发布包复制到 Linux 服务器,可以使用 Secure Copy(SCP)来完成。在本地计算机上打开终端,输入以下命令: scp -r /pach/to/publish/folder username@servername:/var/aspnetcore/publish 四、创建 Systemd 服务 在 Linux 上为 ASP.NET Core 应用程序启用自动启动和自动重启,需要创建 Systemd 服务。可以使用编辑器打开 .service 文件,文件位置 /etc/systemd/system/myapp.service: [Unit] Description=MyApp ASP.NET Core Application [Service] WorkingDirectory=/var/aspnetcore/publish ExecStart=/usr/bin/dotnet /var/aspnetcore/publish/MyApp.dll Restart=always RestartSec=10 SyslogIdentifier=myapp User=www-data Environment=ASPNETCORE_ENVIRONMENT=Production [Install] WantedBy=multi-user.target 五、启动应用程序 使用以下命令来启动 ASP.NET Core 应用程序: sudo systemctl start myapp 之后就可以在 Linux 上访问和使用 ASP.NET Core 应用程序了。 以上就是 ASP.NET Core 部署Linux 的过程。部署过程较为繁琐,但是使用 .NET Core 能够极大的提高跨平台开发的效率以及跨平台应用的可移植性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值