ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Orchard Core 的 Red Hat Ecosystem Catalog 认证管理与 RHEL 部署实战

Orchard Core 的 Red Hat Ecosystem Catalog 认证管理与 RHEL 部署实战 CMS后端Web框架【免费下载链接】OrchardCoreOrchard Core is an open-source modular and multi-tenant application framework built with ASP.NET Core, and a content management system (CMS) built on top of that framework.项目地址https://gitcode.com/gh_mirrors/or/OrchardCore点击查看免费下载Red Hat Ecosystem Catalog 是 Red Hat 官方认证软件目录用于证明软件可运行在 Red Hat Enterprise LinuxRHEL等 Red Hat 平台上。Orchard Core 作为基于 ASP.NET Core 的跨平台模块化应用框架与 CMS通过认证可以更好地向 Red Hat 社区展示其 RHEL 兼容性。本文基于仓库内的官方认证管理文档完整梳理从创建 Azure RHEL 虚拟机、发布 Orchard Core 到通过 rhcert-cli 完成非容器化认证的全流程并给出每一步的可验证命令、故障排查要点与仓库源码佐证。认证背景为什么 Orchard Core 需要 Red Hat Ecosystem Catalog 认证Red Hat Ecosystem Catalog 收录经 Red Hat 认证、可在其平台上运行的软件。Orchard Core 是跨平台的因此天然可以运行在 RHEL 上。为了让这一能力得到官方背书、并向 Red Hat 用户社区更好地推广 Orchard Core项目团队完成了认证并在 Red Hat Ecosystem Catalog 上建立了 Orchard Core 的应用档案。认证的核心价值在于它是一种Orchard Core 可在 RHEL 上正常工作的持续承诺。因此每当 Orchard Core 发布新版本时需要重新执行认证流程以保持认证时效每当 RHEL 发布新的主版本major release时同样建议重新认证不过认证并非强制性的项目方以偶尔执行一次作为可接受的维护节奏。从仓库源码看Orchard Core 当前的运行目标为 .NET 10见 global.json 中的version: 10.0.401与 TargetFrameworks.props 中net10.0的默认目标框架这正是它能够在多种 Linux 发行版上直接部署的底层基础。认证前提必须是非容器化应用认证认证有一个关键约束Orchard Core 必须以非容器化应用non-containerized app的形式完成认证。原因在于 Red Hat 的容器化应用认证要求使用 Podman 作为容器运行时而 Orchard Core 项目现有的 Docker 镜像orchardproject/orchardcore-cms-linux并不满足这一要求。因此认证路线只能走非容器化应用流程即直接在 RHEL 系统上以传统方式部署并运行 Orchard Core。仓库根目录的 Dockerfile 展示了项目官方镜像的构建方式dotnet publish ... -c Release后以ENTRYPOINT [dotnet, OrchardCore.Cms.Web.dll]启动这可以视为容器化形态的参考而认证流程则完全绕开镜像改为在 RHEL 虚拟机上直接发布运行。认证准备Red Hat Certified Technology Portal 与基础设施1. 申请 Certified Technology Portal 访问权限认证的第一步是在 Red Hat 的 Certified Technology Portal 上完成基础设置账号、组织与产品建档。如果团队尚无权访问该门户需要先向 Red Hat 申请开通。该门户是整个认证流程包括后续 rhcert-cli 工具的使用的入口。2. 创建 Azure RHEL 虚拟机官方文档推荐并非强制使用 Azure 虚拟机来完成认证相比本地虚拟化环境更简单直接。具体做法在 Azure Marketplace 中搜索Red Hat Enterprise Linux选择 Red Hat 提供的官方镜像取最新主版本创建虚拟机时务必开放HTTP80和 HTTPS443端口因为认证流程需要在公网访问部署后的站点创建完成后下载 Azure 生成的PEM 私钥文件用于 SSH 登录。3. 连接虚拟机使用 MobaXterm 或任意终端工具连接 VM主机VM 的公网 IP用户azureuserAzure RHEL 镜像默认用户认证方式使用创建 VM 时下载的 PEM 私钥文件。4. 开放 80 端口RHEL 默认启用 firewalld需要显式放行 80 端口先查看服务状态再添加规则并重载sudo systemctl status firewalld sudo firewall-cmd --zonepublic --add-port80/tcp --permanent sudo firewall-cmd --reload发布 Orchard CoreRelease Self-Contained linux-x64认证测试需要一个已发布的 Orchard Core 产物。官方文档给出的发布要求是构建配置Release部署方式Self-Contained自包含即产物内嵌 .NET 运行时目标机器无需预装 .NET目标运行时linux-x64。在 Visual Studio 中可以直接通过右键项目 → Publish完成发布产物生成后将 publish 文件夹整体上传到 VMMobaXterm 自带的文件浏览器即可完成上传。发布入口项目是 src/OrchardCore.Cms.Web其 OrchardCore.Cms.Web.csproj 引用了OrchardCore.Application.Cms.Targets等目标项目并定义了InProcess托管模型与net10.0目标框架。仓库的 Dockerfile 中也给出了命令行发布示例dotnet publish src/OrchardCore.Cms.Web/OrchardCore.Cms.Web.csproj -c Release -o /app --framework net10.0 /p:RunAnalyzersfalse实际认证时将上述命令中的输出目录指向要上传的 publish 文件夹即可自包含发布可附加-r linux-x64 --self-contained true参数。在 RHEL 上试运行站点上传发布产物后在 VM 上按以下步骤初始化并启动sudo mkdir -m 777 App_Data sudo mkdir -m 777 wwwroot sudo chmod 777 ./OrchardCore.Cms.Web sudo ./OrchardCore.Cms.Web --urls http://*:80 --wwwroot命令要点说明App_Data是 Orchard Core 存放站点数据如 SQLite 数据库、日志等的目录必须预先创建且对运行进程可写wwwroot是静态资源根目录同样需要预先创建--urls http://*:80让 Kestrel 监听所有网卡的 80 端口与仓库 Dockerfile 中ASPNETCORE_URLShttp://:80的约定一致--wwwroot指示从命令行显式启用 wwwroot 目录处理。随后在浏览器中打开 VM 的公网 IP应当能看到 Orchard Core 的安装Setup界面并且可以完整走完站点初始化流程——这证明应用在 RHEL 上真实可用。执行 Red Hat 非容器化认证rhcert-cli保持 Orchard Core 持续运行另开一个新的 SSH 窗口按照 Red Hat 官方文档中非容器化应用认证工作流non-containerized application certification workflow执行认证测试核心是运行 Red Hat 提供的rhcert-cli工具链。官方文档额外强调了几个实操要点所有命令都要加 sudo认证环境中无法使用root用户直接操作因此所有 rhcert-cli 相关命令都需以sudo前缀运行。故障Simple Content Access 阻止附加订阅如果执行认证工具的 attach 步骤时出现如下提示Ignoring request to attach. It is disabled for org ... because of the content access mode setting.说明当前组织的Simple Content AccessSCA模式阻止了订阅附加操作。此时需要登录 Red Hat Customer Portal 的 Overview 页面禁用 Simple Content Access然后再重新尝试 attach。故障文件系统布局不符合推荐标准运行rhcert-cli save后如果输出中包含Error: File system layout NOT in conformation with recommended standards需要进一步检查报错是否指向根分区root partition大小不足。如果是则按照 Azure 官方文档的磁盘扩容指引将 OS 磁盘扩容到至少 10 GB然后重新执行保存步骤。认证完成后的清理Red Hat 确认认证通过后需要做好资源清理删除用于认证的 Azure 虚拟机及其关联资源磁盘、网络接口、公网 IP 等在 Red Hat Customer Portal 的 Systems 页面删除对应系统记录。这一步既是成本控制也是避免遗留过期、无人维护的认证测试环境。小结认证流程全景回顾阶段关键动作核心命令/工具准备获取 Certified Technology Portal 权限门户后台配置建环境Azure 创建 RHEL 最新主版本 VM开放 80/443Marketplace 官方镜像连机器公网 IP azureuser PEM 私钥MobaXterm / SSH放端口放行 80 端口firewall-cmd系列命令发布Release、Self-Contained、linux-x64dotnet publish/ VS Publish试运行初始化并启动站点--urls http://*:80 --wwwroot认证按非容器化工作流执行sudo rhcert-cli ...清理删除 VM 与 Red Hat 系统记录Azure 控制台 Customer Portal整个流程的权威出处为仓库内的 认证管理文档。对 Orchard Core 团队而言这份指南保证了每次大版本发布后都能按统一、可复现的步骤完成 RHEL 认证对社区用户而言通过认证的档案也意味着可以放心地将 Orchard Core 部署在 RHEL 生产环境中。赞分享CMS后端Web框架【免费下载链接】OrchardCoreOrchard Core is an open-source modular and multi-tenant application framework built with ASP.NET Core, and a content management system (CMS) built on top of that framework.项目地址https://gitcode.com/gh_mirrors/or/OrchardCore点击查看免费下载相关推荐Orchard Core Microsoft 认证模块实战指南集成 Microsoft Account 与 Microsoft Entra ID 登录Orchard Core Microsoft 认证模块实战指南集成 Microsoft Account 与 Microsoft Entra ID 登录 本篇技CMS后端Web框架Orchard Core 显示管理完全指南Display Driver 与 placement.json 实战Orchard Core 显示管理完全指南Display Driver 与 placement.json 实战 Orchard Core 的内容渲染体系围绕CMS后端Web框架Orchard Core OpenApi 模块实战指南Swagger/ReDoc/Scalar 文档、Bearer/PKCE 认证与 NSwag 客户端生成Orchard Core OpenApi 模块实战指南Swagger/ReDoc/Scalar 文档、Bearer/PKCE 认证与 NSwag 客户端生成CMS后端Web框架上一篇Simple Keyboard 极简键盘3分钟告别臃肿输入法下一篇如何将DeepSeek-R1-Distill-Qwen-1.5B-FP16部署到生产环境创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表