.net 我们如何在netlify中发布dotnet核心应用程序?

fnvucqvd  于 2023-01-10  发布在  .NET
关注(0)|答案(2)|浏览(228)

我正在尝试在Netlify中发布一个家庭作业应用程序,但是当我尝试部署它时,它给出了错误。
这是部署日志。
9:25:34 PM:构建准备开始9:25:36 PM:构建映像版本:晚上9:25:36:构建映像标记:v3.3.14晚上9:25:36:构建机器人版本:80440 c4491 d323247 b 9d 55 f7 bea 2 ea 6 bc 96 ce 8d 2晚上9点25分36秒:正在获取缓存的依赖项9:25:37 PM:开始下载252.0MB缓存9:25:38 PM:已在1.125171279s 9:25:38 PM完成下载缓存:开始提取缓存9:25:47 PM:已在9.35605714s 9:25:47 PM中完成提取缓存:已在10.542038119s 9:25:47 PM完成缓存提取:开始准备构建版本的repo 9:25:47 PM:准备Git引用参考/头文件/主文件9:25:48 PM:开始构建脚本9:25:48 PM:正在安装依赖项9:25:49 PM:已开始恢复缓存节点版本9:25:51 PM:已完成恢复缓存节点版本9:25:52 PM:v10.20.1已安装。晚上9:25:53:现在使用节点v10.20.1(npm v6.14.4)晚上9:25:53:已开始恢复缓存的生成插件9:25:53 PM:已完成恢复缓存的生成插件9:25:53 PM:尝试ruby版本2.6.2,从环境9:25:54 PM读取:使用ruby版本2.6.2 9:25:54 PM:使用PHP版本5.6晚上9:25:54:5.2已安装。9:25:54 PM:使用Swift版本5.2 9:25:54 PM:已开始恢复缓存的Go缓存9:25:54 PM:已完成恢复缓存的Go缓存9:25:54 PM:转到版本go1.12 linux/amd 64 9:25:54下午:转到版本go1.12 linux/amd 64 9:25:54下午:正在安装缺少的命令9:25:54 PM:验证运行目录9:25:54 PM:正在执行用户命令:dotnet构建版本9:25:59 PM:Microsoft(R)生成引擎版本16.6.0+ 5 ff 7 b 0 c9 e,用于.NET内核9:25:59 PM:版权所有(C)Microsoft Corporation。保留所有权利。9:26:01 PM:正在确定要还原的项目... 9:26:04 PM:恢复/opt/build/repo/电子产品市场数据库管理系统csproj(2.21秒)。9:26:12 PM:
电子产品市场数据库管理系统/opt/build/repo/bin/Debug/netcoreapp3.1/电子产品市场数据库管理系统. dll晚上9:26:12:电子产品市场数据库管理系统/opt/build/repo/bin/Debug/netcoreapp3.1/电子产品市场数据库管理系统. Views.dll晚上9:26:13:构建成功。9:26:13 PM:0警告9:26:13下午:0错误9:26:13下午:经过时间00:00:13.37 9:26:13下午:跳过函数准备步骤:无功能目录设置9:26:13 PM:缓存工件9:26:13 PM:开始保存构建插件9:26:13 PM:已完成保存构建插件9:26:13 PM:开始保存pip缓存9:26:20 PM:已完成保存pip缓存9:26:20 PM:开始保存emacs桶依赖项9:26:20 PM:已完成保存emacs存储桶依赖项9:26:20 PM:开始保存maven依赖项9:26:20 PM:已完成保存maven依赖项9:26:20 PM:已开始保存 Boot 依赖项9:26:20 PM:已完成保存 Boot 依赖关系9:26:20 PM:开始保存Go依赖项9:26:20 PM:已完成保存Go依赖项9:26:20 PM:晚上9点26分20秒:警告晚上9:26:20:即使在构建过程完成后,仍有一些延迟过程:晚上9点26分20秒:用户PID %CPU %MEM VSZ RSS TTY统计开始时间命令9:26:20 PM:构建机器人1285 27.9 0.6 28786512 187172?
Sl 18:26 0:03 /opt/构建主页/.dotnet/dotnet执行/opt/构建主页/. dotnet/sdk/3.1.300/Roslyn/bincore/VBCS编译器. dll-管道名称:32wBLnYYW2__v++ qn 9 hs 3AnpT 7 QZOsyeYeOn 6 hJdLao晚上9:26:20:构建机器人程序1311 20.5 0.4 28228864 128840?Sl 18:26 0:02 /选项/构建主页/.dotnet/点net/选项/构建主页/. dotnet/软件开发工具包/3.1.300/软件开发工具包/微软. NET软件开发工具包. Razor/工具包/网络核心应用程序3.0/rzc.dll服务器-p构建机器人程序。XiJojHVTENZ 4 oaYBDyZsHSy +b晚上9:26:20:我们的构建不会自动终止您的进程,因此请确保9:26:20 PM:构建完成后没有运行任何内容,否则将标记为9:26:20 PM:失败,因为某些内容仍在运行。9:26:20 PM:晚上9点26分20秒:构建脚本成功9:26:20 PM:下午9:26:20开始从“bin/Debug/netcoreapp3.1/publish”部署站点:正在创建部署树9:26:20 PM:创建部署上传记录9:26:20 PM:0个要上载的新文件9:26:20 PM:0新功能上传9:26:20 PM:开始后处理9:26:20 PM:9:26:20 PM完成后处理:现场直播时间:9:27:02 PM:已在1m25.952288421s中完成对生成请求的处理
如果你知道在NetLify上构建DotNet核心应用程序的指南,请告诉我。

k97glaaz

k97glaaz1#

这是不可能的。
我搜索了Netilfy文档。您所要求的不可能:https://community.netlify.com/t/support-guide-can-i-run-a-web-server-http-listener-and-or-database-at-netlify/3078
如何在Netlify运行服务器/数据库?
我们经常会遇到关于如何在Netlify上运行特定的后端服务器或〉数据库的问题。这类问题的例子包括:

  • 如何让我的节点HTTP侦听器响应请求?
  • 如何启动服务器上运行的Mongo/MySQL/?
  • 我如何通过SSH进入我的网站?

我们今天在这里回答这些问题--答案是:你不能!
... Netlify的CDN/ADN仅提供静态文件...

原始答案

和一些调试问题的提示。
您是否完整阅读了错误消息?它显示:

9:26:20 PM: ** WARNING ** 
9:26:20 PM: There are some lingering processes even after the build process finished

然后

9:26:20 PM: Our builds do not kill your processes automatically, so please make sure
9:26:20 PM: that nothing is running after your build finishes, or it will be marked as
9:26:20 PM: failed since something is still running.

它甚至可以告诉您正在运行的内容:

9:26:20 PM: USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
9:26:20 PM: buildbot 1285 27.9 0.6 28786512 187172 ? Sl 18:26 0:03 /opt/buildhome/.dotnet/dotnet exec /opt/buildhome/.dotnet/sdk/3.1.300/Roslyn/bincore/VBCSCompiler.dll -pipename:32wBLnYyW2__v++qn9hs3AnpT7QZOsyeYeOn6hJdLao 
9:26:20 PM: buildbot 1311 20.5 0.4 28228864 128840 ? Sl 18:26 0:02 /opt/buildhome/.dotnet/dotnet /opt/buildhome/.dotnet/sdk/3.1.300/Sdks/Microsoft.NET.Sdk.Razor/tools/netcoreapp3.0/rzc.dll server -p buildbot.XiJojHVTENZ4oaYBDyZsHSy+b

看起来有2个dotnet进程在您的构建结束时仍在运行,这使得构建失败。它们是. NET核心编译服务器(VBCSCompiler.dll)和Razor页面编译器(rzc.dll)。
这是一个众所周知的问题:https://github.com/dotnet/sdk/issues/9487。引用该错误报告:
使用-p:UseRazorBuildServer=false禁用Razor(rzc)服务器。
使用-p:UseSharedCompilation=false禁用Roslyn(vbcscompiler)服务器。
因此,修改dotnet build(或publish)命令,使其运行如下:

dotnet build -p:UseRazorBuildServer=false -p:UseSharedCompilation=false [your other options]
cqoc49vn

cqoc49vn2#

如果您使用Netlify提供静态文件***并且***使用MAUI(尽管您依赖于客户端),则可以实现此功能。
安装CI/CD方案的依赖项。
相应地调整目录:

Set the base directory: Release/net6.0/browser-wasm/publish/wwwroot
Build command: dotnet publish -c Release -o release
Publish directory: Release/net6.0/browser-wasm/publish/wwwroot/

我希望这能有所帮助!如果您有任何问题或需要进一步的帮助,请告诉我。

相关问题