backstage~如何打造一个成功的backstage应用?

摘要:应该如何创建自己公司的backstage平台 1. 两种方式的本质区别 特性 npx @backstagecreate-app 从 GitHub 下载源代码 产出物 一个完整的、可立即运行和开发的 Backstage 应用。 Backst
应该如何创建自己公司的backstage平台 1. 两种方式的本质区别 特性 npx @backstage/create-app 从 GitHub 下载源代码 产出物 一个完整的、可立即运行和开发的 Backstage 应用。 Backstage 项目框架本身的源代码,不是你应用的代码。 目的 创建你自己的、个性化的 Backstage 开发者门户。 这是官方推荐的、标准的启动方式。 用于贡献代码、深度研究框架内核。比如你想为 Backstage 项目本身修复Bug或开发新功能。 关系 这个命令内部会去获取 GitHub 上最新的 Backstage 框架,并为你生成一个预配置好的应用。 是 create-app 命令所依赖的“原材料”。 适合场景 99.9% 的公司部署和定制场景。 0.1% 的 Backstage 核心开发者或研究者。 2. 详细解释 关于 npx @backstage/create-app: 这个命令是一键式脚手架工具。它会: 从 npm 仓库获取最新的创建工具。 为你交互式地创建一个新的项目目录(比如 my-backstage)。 在这个目录里,生成一个完整的、单体式的 Backstage 应用,这个应用已经集成了所有核心插件(软件目录、模板、文档等)。 自动安装好所有依赖。 是的,这个命令创建出来的应用,就是一个完整的、需要你后续部署和定制的 Backstage 服务平台。你可以立刻在本地运行它(yarn dev),它就是一个拥有基础功能的开发者门户。你之后的所有定制化开发(添加公司Logo、配置认证、接入内部系统、编写自定义插件)都将基于这个项目进行。 关于从 GitHub 下载源码: 如果你直接克隆 Backstage 的主仓库(https://github.com/backstage/backstage),你会得到一个包含 Backstage 框架本身、所有核心插件源码、以及大量示例和开发工具 的巨型代码库。 这个代码库结构复杂,并不是一个可以直接运行的应用。它更像是一个“工厂”,而 create-app 是这个“工厂”生产出的“标准产品”。 直接基于这个代码库开始构建你的应用,会异常困难,你需要手动处理极其复杂的项目配置、依赖管理和构建流程,这几乎是一条不归路。 结论与建议 对于希望部署自己平台的公司,正确的启动步骤是: 使用脚手架创建:在你的开发机器上,运行 npx @backstage/create-app。按照提示输入应用名称(如 company-dev-portal)。 获取专属代码库:命令完成后,你会得到一个名为 company-dev-portal 的文件夹。这就是你公司专属的 Backstage 平台的源代码。你应该立即将它推送到你公司的内部 Git 仓库(如 GitLab, Gitee, 内部GitLab)中进行版本管理。 本地运行与探索:进入该目录,运行 yarn install 和 yarn dev,即可在本地启动一个基础版的门户。通过访问 http://localhost:3000 来熟悉它。 开始定制化:基于这个生成的项目,你可以: 修改 app-config.yaml 配置文件(设置后端地址、数据库、认证等)。 在 /packages/app 下定制前端界面(如主题、Logo)。 通过 yarn backstage-cli plugin add 添加新的社区插件。 创建自己的软件模板和编写技术文档。 简单来说:npx @backstage/create-app 是“购买一套精装修房的毛坯房”,你只需要在此基础上进行个性化装修。而从 GitHub 下载源码是“买下整块地和水泥钢筋,从打地基开始自己盖楼”。 对于绝大多数团队,前者是唯一明智的选择。 源码用来开发,npx @backstage/create-app产品用来部署 你的理解完全正确!是第二种情况。这是一个非常重要的概念区分,很多新手都会在这里产生混淆。 让我来清晰地解释一下: 核心比喻 npx @backstage/create-app:就像是平台团队购买并搭建好一台“服务器”和“网站框架”。 部署后的 Backstage 平台:就是运行在那台服务器上的公司内部网站,比如叫 dev-portal.company.com。 其他开发者:是这个内部网站的“用户”,他们通过浏览器访问这个网站来使用各种服务,完全不需要自己运行 create-app。 详细分工 1. 平台团队的工作(一次性的) 使用 npx @backstage/create-app 创建唯一的一个 Backstage 应用项目(例如 company-backstage)。
阅读全文