阿里云(centos 7) 布署 aps .net core 3.0 项目
1. centos 7 安装 asp.net core 3.0
运行: yum install dotnet-sdk-3.0 -y
检查是否安装成功: dotnet -v

2. 创建并发布项目
我使用的是vs 2019
2.1 ASP.NET Core Web 应用程序

选好后点下一步
2.2 设置项目名称和位置

设置完成后点击创建
2.3 版本选择ASP.NET Core 3.0 ,项目选择Web 应用程序

选好后点击创建,会生成一个项目,项目结构如下:

2.4 创建 hosting.json 文件
文件内容如下:
{ "server.urls": "http://*:8081" }
现在的项目结构如下:

2.5 修改 Program.cs 文件
修改为:
public static void Main(string[] args) { var config = new ConfigurationBuilder() .SetBasePath(Directory.GetCurrentDirectory()) .AddJsonFile("hosting.json", optional: true) .Build(); var host = new WebHostBuilder() .UseKestrel() .UseConfiguration(config) .UseContentRoot(Directory.GetCurrentDirectory()) .UseIISIntegration() .UseStartup<Startup>() .Build(); host.Run(); }
2.6 在项目上面右击点击发布
选择文件,然后点高级

2.7 配置如下,点击保存

2.8 点击创建配置文件

2.9 点击发布

2.10 发布成功

发布成功后按住Ctrl点击这个连接进入发布好的程序目录
目录结构如下:

3. 将项目上传到服务器
我这使用xftp

选中文件夹直接拖到右边就可以了
我上传到/root 目录了,然后目录名称叫:publish
4. 服务器布署
进入publish目录:cd /root/publish
启动项目: dotnet centos.dll 因为项目名称叫centos所以,项目生成了一个centos.dll,如果项目名称为其他的话,dll名称的格式为:项目名称+dll
如果出现下面这种情况就是没问题了:

然后点击 Ctrl+C 停止项目
5. 配置防火墙
阿里云默认防火墙是关闭的,不过也可以先查看一下防火墙是否是关闭状态。
运行这个命令查看防火墙状态: systemctl status firewalld

这种情况的话防火墙就是关闭的,因为状态为:dead
如果是下面这种情况就代表防火墙是开着的,就不用再走打开防火墙的那个步骤了

5.1 打开防火墙
运行: systemctl start firewalld
什么也不提示就代表打开成功了,可以运行 systemctl status firewalld 再查看一下启动状态,这次应该就是启动中了
5.2 开放8081端口
运行:
firewall-cmd --permanent --add-port=8081/tcp
-
--permanent: 表示永久生效
5.3 查看所有已经开放的端口
运行:
firewall-cmd --permanent --list-port

如果8081 端口已经开放了,就可以先运行起来项目了
6. 设置阿里云安全组
6.1 登录阿里云官网,点击云服务器

6.2 选择实例

6.3 在右边的菜单栏选择本实例安全组

6.4 点进去

6.5 点击快速创建规则

6.6 输入以下内容点击确定

然后就ok了
7. 查看项目
在浏览器中输入:ip:8081就可以访问到项目了


浙公网安备 33010602011771号