WebAPI项目在Linux服务器上部署记录

对已有的WebAPI项目进行发布

发布流程

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
需要把publish的文件夹直接上传至linux服务器

在Linux服务器上部署环境

检查是否安装了dotnet环境

直接命令行输入 dontnet,如果弹出的是下面的语句,说明没有安装dotnet环境
在这里插入图片描述

-bash: dotnet:command not found

查找安装dotnet环境

通过下面命令来找有什么可以下载安装的环境

yum search dotnet

[截图]

如果找不到最新dotnet环境
需要创建新的缓存
在这里插入图片描述

yum makecache

在这里插入图片描述

然后再查找dotnet运行时环境
如果查看的时候是下面这种情况
在这里插入图片描述
在这里插入图片描述
说明没有安装RPM包,可以尝试按照一下的步骤安装RPM包

  • 导入rpm源
sudo rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm
  • 更新软件包
sudo yum -y update
  • 创建新的缓存
yum makecache
  • 搜索安装包
yum search all  dotnet

安装dotnet环境

根据上图可以发现有很多是.NET Core的安装运行时和sdk,因此我们要局限一些,只需要查找aspnetcore就可以了

yum search aspnetcore

[图片]
安装需要的运行环境,我的项目是6.0的框架,因此,我安装7.0的运行时

yum install -y aspnetcore-runtime-7.0

等待一下系统运行安装完成,说明webapi的运行时环境已经部署到Linux服务器上了
为什么没有找到6.0的版本,我也没有弄清楚,知道的小伙伴可以留言,但是装7.0的版本也是可以的

运行webapi项目

dotnet WangZongTools.API.dll

[图片]

皆大欢喜,说明运行环境和你项目框架一致,就可以的了。

记录遇到的问题

显示“The framework ‘Microsoft.NETCore.App’,Version’7.0.0’ (x64) was not found”

需要找到项目的runtimeconfig.json文件,查看当前目录下所有的文件

ll
cat xxx.runtimeconfig.json

然后把Microsoft.NETCore.App的version修改成提示找到的version
打开文件

vi xxx.runtimeconfig.json

修改完后,按esc键保存,然后输入 :wq 退出编辑状态

修改项目指定的IP地址

在linux界面按 ctrl+c停止项目运行
[图片]
重新指定ip地址和端口号启动

dotnet WangZongTools.API.dll --urls="http://*:8081"

如果是使用某里云的服务器的话,弹出“Cannot assign requested address”错误。说明你使用了公网IP,要切换成某里云的内网IP

在服务器外,访问会访问不了

使用在局域网内的其他机子使用 curl指令来访问我们部署好的网站

curl http://某里云公网IP/xxx/xxx

一般是防火墙的原因,可以尝试停掉防火墙,然后再去访问,仅仅测试使用,不建议关掉防火墙
关闭防火墙命令

systemctl stop firewalld

开启防火墙

systemctl start firewalld

当前的部署仅运行于当前环境,并没有开启后台运行。

因此,会出现你关闭编辑器后,api就无法访问了。如果需要长期使用的话,需要把项目在后台运行

可以使用以下命令来添加

nohup dotnet WangZongTools.API.dll --urls="http://*:8081" &

如果出现提示:

 忽略输入并把输出追加到"nohup.out"

需要将标准输出内容重定向到文件

nohup dotnet WangZongTools.API.dll --urls="http://*:8081" > a.txt 

出现提示:

 nohup: 忽略输入重定向错误到标准输出端

将标准错误输出重定向到文件

nohup  dotnet WangZongTools.API.dll --urls="http://192.168.x.x:8081"  > a.txt 2>&1 &

注意事项

在某里云里面的服务器,记得需要去开放端口号才可以访问噢

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

baobao熊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值