IDP之Backstage - 环境搭建

news2024/9/24 23:32:19

0. 目录

      • 1. 前言
      • 2. 环境准备(Windows10下)
        • 2.1 安装nvm
        • 2.2 git和docker安装
      • 3. 创建模板项目
        • 3.1 典型错误: fails on the `yarn install` step
        • 3.2 再次启动
        • 3.3 验证
      • 4. 相关

1. 前言

本不想写这篇,因为看着官网文档写着挺简单的,但实际操作起来却是步步坑。于是怒而把过程细节重演一次并记录下来,于是就有了这篇。

2. 环境准备(Windows10下)

按照官网给出的Prerequisites,结合自身的实际情况,需要准备如下内容:

  1. Git-for-windows 。 可以同时满足GIT和Linux环境的要求。
  2. nvm - Node Version Manager 。同时满足nodejs和yarn的安装需求;而且可以在多个版本之间自由切换,相较于独立安装nodejs方便不少。
  3. Docker Desktop。Windows下的Docker自然就是选择它了。
2.1 安装nvm

这一步将安装关键的nodejs和yarn。

######################################### 1. 安装
# 如果这一步报错"Could not resolve host: raw.githubusercontent.com", 那就干脆浏览器下载这个install.sh脚本, 然后再本地执行
# 官方说明: https://github.com/nvm-sh/nvm?tab=readme-ov-file#wsl-troubleshooting
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash

######################################### 2. 配置
# 以上 install.sh 脚本执行后,不出意外出现如下提示:
#	$ ./install.sh
#	=> Downloading nvm from git to '/c/Users/lqzkc/.nvm'
#	=> Cloning into 'C:/Users/lqzkc/.nvm'...
#	remote: Enumerating objects: 365, done.
#	remote: Counting objects: 100% (365/365), done.
#	remote: Compressing objects: 100% (313/313), done.
#	remote: Total 365 (delta 43), reused 166 (delta 26), pack-reused 0
#	Receiving objects: 100% (365/365), 365.08 KiB | 1.28 MiB/s, done.
#	Resolving deltas: 100% (43/43), done.
#	* (HEAD detached at FETCH_HEAD)
#	  master
#	=> Compressing and cleaning up git repository
#	
#	=> Profile not found. Tried ~/.bashrc, ~/.bash_profile, ~/.zprofile, ~/.zshrc, and ~/.profile.
#	=> Create one of them and run this script again
#	   OR
#	=> Append the following lines to the correct file yourself:
#	
#	export NVM_DIR="$HOME/.nvm"
#	[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
#	
#	=> Close and reopen your terminal to start using nvm or run the following to use it now:
#	
#	export NVM_DIR="$HOME/.nvm"
#	[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm

# 2.1 按照上面命令行输出的提示, 创建一个 ~/.profile文件, 并写入其给出的内容; 
vi ~/.profile

# 2.2 重新打开git命令行, 执行上述内容
export NVM_DIR="$HOME/.nvm"
	[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm

######################################### 3. 验证
# 验证nvm安装成功
nvm -v

# 已经安装了哪些版本的nodejs
nvm ls

# 卸载指定版本nodejs
nvm uninstall 16

# 当前使用的nodejs版本
nvm current

# 安装指定版本nodejs
#	注意:如果你之前配置过nodejs, 可能出现如下提示. 按照提示操作即可.
nvm install 18
    Downloading and installing node v18.20.2...
    Downloading https://nodejs.org/dist/v18.20.2/node-v18.20.2-win-x64.zip...
    ######################################################################## 100.0%
    Computing checksum with sha256sum
    Checksums matched!
    Your user’s .npmrc file (${HOME}/.npmrc)
    has a `globalconfig` and/or a `prefix` setting, which are incompatible with nvm.
    Run `nvm use --delete-prefix v18.20.2` to unset it.
nvm use 18      # 指定使用指定版本的nodejs
node -v         # 验证node安装成功
npm -v          

# 设置默认使用的nodejs版本
nvm alias default 18.20.2

######################################### 4. 安装yarn
# https://classic.yarnpkg.com/en/docs/install#windows-stable
npm install --global yarn

yarn -v
2.2 git和docker安装

参考上方给出的链接地址下载安装即可。相关的文档一大堆,这里不再重复,避免偏离本文重点。

3. 创建模板项目

相关的官方文档写得挺简单:

# 键入这一条命令, 在弹出的输入行中键入你想要创建的项目名,例如my-backstage-app
npx @backstage/create-app@latest
# 启动项目
#	如果一切顺利, 该命令执行完毕之后浏览器将自动打开 localhost:3000 地址.
cd my-backstage-app
yarn dev
3.1 典型错误: fails on the yarn install step

这应该算是本文出现的最大原因。

解决的方案其实官方文档里已经给出了 —— 安装node-gyp的依赖项pythonvisualstudio2022-workload-vctools
在这里插入图片描述

我这里其实就是将其简化下,并且给出几条优化建议:

  1. 最简单的安装方式自然是如这里建议的:
# 1. 先安装Chocolatey。以管理员权限打开cmd.exe命令行提示
@powershell -NoProfile -ExecutionPolicy Bypass -Command "iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))" && SET PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin

choco -v   # 验证

# 2. 使用Chocolatey安装python和visualstudio2022-workload-vctools
#	注意:这里建议以管理员身份打开powershell,并且架起全局梯子, 节点选美丽国
choco install python visualstudio2022-workload-vctools -y
  1. 另外的方案是分开安装python和visualstudio2022-workload-vctools。很多时候我们是有python编程需求的,所以一般都是建议使用pyenv-win。而对于visualstudio2022-workload-vctools的安装,依然是参考官方文档。
3.2 再次启动
cd my-backstage-app
yarn install
yarn tsc

yarn dev
3.3 验证

http://localhost:3000/
在这里插入图片描述

4. 相关

  1. backstage-getting-started
  2. isolated-vm#requirements
  3. VSCode - plugin - backstage

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1595856.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

gcn代码处理出现的问题

README 版本不一致 python 2.7 PYTHON 3.7 切换 TensorFlow系统的学习使用 数据集下载

小程序变更主体需要多久?

小程序迁移变更主体有什么作用?小程序迁移变更主体的好处有很多哦!比如可以获得更多权限功能、公司变更或注销时可以保证账号的正常使用、收购账号后可以改变归属权或使用权等等。小程序迁移变更主体的条件有哪些?1、新主体必须是企业主体&am…

3dmax制作小熊猫的基本流程

1.透视图插入面片,改高度宽度,把参考图放进面片里。 2.角度捕捉切换,角度改为90 3.shift旋转,旋转面片,复制一个出来 4.在前视图,把参考图片中的正式图小熊猫的一半的位置(可以是眼睛&#x…

2024最新 PyCharm 2024.1 更新亮点看这篇就够了

2024最新 PyCharm 2024.1 更新亮点看这篇就够了 文章目录 2024最新 PyCharm 2024.1 更新亮点看这篇就够了🚀 PyCharm 2024.1 发布:全面升级,助力高效编程!摘要引言 🚀 快速掌握 Hugging Face:模型与数据集文…

【微服务】Nacos生产环境配置技巧分享

前面我们介绍了Nacos作为配置中心组件实现,是如何配置和接入的。对于Nacos来说,他是集注册中心及配置中心为一体的。基于它的强大能力,我们在这里来统一分享几个Nacos在生产环境的配置技巧。 一、热加载配置 Nacos 本身是支持配置热加载的&…

面试官:MySQL的自增 ID 用完了,怎么办?

如果你用过或了解过MySQL,那你一定知道自增主键了。每个自增id都是定义了初始值,然后按照指定步长增长(默认步长是1)。虽然,自然数是没有上限的,但是我们在设计表结构的时候,通常都会指定字段长…

基于Spring Boot的入职匹配推荐系统设计与实现

基于Spring Boot的入职匹配推荐系统设计与实现 开发语言:Java框架:springbootJDK版本:JDK1.8数据库工具:Navicat11开发软件:eclipse/myeclipse/idea 系统部分展示 管理员登录界面,登录成功后进入到系统操…

一文搞定关于SkyWalking告警的那些事儿

Apache SkyWalking告警是由一组规则驱动,这些规则定义在config/alarm-settings.yml文件中。 告警规则 告警规则定义了触发告警所考虑的条件。告警规则有两种类型,单独规则和复合规则,复合规则是单独规则的组合。这里重点介绍一下单独规则&a…

怎么转行做产品经理?

小白转产品经理第一点要先学基础理论知识,学了理论再去实践,转行,跳槽! 学理论比较好的就是去报NPDP的系统班,考后也会有面试指导课、职场晋升课程,对小白来说非常合适了~(B站:不爱…

QT文本操作

文本的操作 文本的读写流程 文本的读写流程 // 文本的读写流程// 1.打开文件》打到文本》QFileDialog::getOpenFileName返回的是// 一个字符串,包括了路径文件名字// open()方法打开文本// 2.读写文本// readAll(),readLine(),write()// 3.关闭文本 // close()使用…

kylin java.io.IOException: error=13, Permission denied

linux centos7.8 error13, Permission denied_linux open error13-CSDN博客 chmod -R 777 /home/zengwenfeng/kkFileView-4.2.1 2024-04-15 13:15:17.416 WARN 3400 --- [er-offprocmng-1] o.j.l.office.LocalOfficeProcessManager : An I/O error prevents us to determine…

蓝桥杯——18

学习视频&#xff1a;21-广度优先搜索练习_哔哩哔哩_bilibili Q&#xff1a;密码锁 #include<iostream> #include<queue> using namespace std; int s, e; bool vis[10000]; struct node {int state;int step;node(int s1, int s2) {state s1;step s2;} }; int…

排序算法—堆排序

文章目录 堆排序堆思路过程建堆排序 代码实现 堆排序 时间复杂度&#xff1a;O(N*logN) 稳定性&#xff1a;不稳定&#xff08;相同元素排序后的相对位置改变&#xff09; 堆 堆的逻辑结构是一棵完全二叉树&#xff1b;堆的物理结构是一个数组&#xff0c;通过下标表示父子结…

[计算机效率] 时间记录工具:ManicTime

3.24 时间记录工具&#xff1a;ManicTime ManicTime是一款数据收集软件&#xff0c;主要用于记录电脑上各种软件使用所花费的时间以及电脑闲置的时间。用户还可以定制记录某一时间段内的系统活动。 数据收集&#xff1a;ManicTime能够静默运行于后台&#xff0c;自动跟踪并收…

美易全球投资中心:金价暴涨背后,美债越来越没人要了?

金价暴涨背后&#xff1a;天量发行的美债越来越没人要了&#xff1f; 近期&#xff0c;国际金价的大涨几乎吸引了全世界投资者的目光。而在狂热的金市买盘背后&#xff0c;而另一避险资产美国国债&#xff0c;则呈现了完全不同的一幕萧条场景。 一系列疲软的美国国债拍卖表现&…

在线知识库如何从零开始搭建?这篇文章来教你!

引言&#xff1a; 有没有想过把那些零散在脑海中的点点滴滴整理起来&#xff0c;建立一个属于自己的在线知识库&#xff1f;无论是个人学习&#xff0c;团队协作&#xff0c;还是企业管理&#xff0c;一个良好的知识库都能帮我们更高效地存储和分享知识。如果你还在为“怎么建知…

创新营销利器:淘宝扭蛋机小程序开发全解析

在数字化浪潮的推动下&#xff0c;淘宝扭蛋机小程序的开发成为了一种全新的购物体验。它巧妙地将传统扭蛋机的乐趣与移动技术的便捷相结合&#xff0c;为用户带来了前所未有的惊喜与互动。 淘宝扭蛋机小程序的开发&#xff0c;不仅是一次技术的革新&#xff0c;更是一次购物方…

基于Springboot+Vue的Java项目-高校心理教育辅导系统开发实战(附演示视频+源码+LW)

大家好&#xff01;我是程序员一帆&#xff0c;感谢您阅读本文&#xff0c;欢迎一键三连哦。 &#x1f49e;当前专栏&#xff1a;Java毕业设计 精彩专栏推荐&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb; &#x1f380; Python毕业设计 &am…

【C 数据结构】静态链表

文章目录 【 1. 基本原理 】1.1 静态链表中的节点1.2 备用链表 【 2. 静态链表的创建 】2.1 实例1 - 创建静态链表&#xff0c;指定值2.2 实例2 - 创建静态链表&#xff0c;默认值 【 3. 静态链表 添加元素 】【 4. 静态链表 删除元素 】【 5. 静态链表 查找元素 】【 6. 静态链…

模型预测控制MPC(2)—— 无约束线性MPC

前文&#xff1a;模型预测控制MPC&#xff08;1&#xff09;—— 基础概念参考&#xff1a;模型预测控制&#xff08;2022春&#xff09;本文从偏控制的角度介绍无约束线性MPC方法&#xff0c; x , u , J x,u,J x,u,J 分别代表状态、动作和代价函数 文章目录 1. 问题定义1.1 多…