安装Backstage.io应用
Backstage介绍
What's Backstage?
Backstage is an open platform for building developer portals. Powered by a centralized software catalog, Backstage restores order to your microservices and infrastructure and enables your product teams to ship high-quality code quickly — without compromising autonomy.
Company: Spotify
Product: Backstage.io
Description:
- Spotify's homegrown developer portal
- An app store for all your developer tools.
- It supercharges developer productivity.
- And it creates a new & better standard for engineering organizations everywhere.
Backstage Components
Backstage Software Catalog- for managing all your software (microservices, libraries, data pipelines, websites, ML models, etc.).Backstage Software Template- for quickly spinning up new projects and standardizing your tooling with your organization’s best practices.Backstage TechDocs- for making it easy to create, maintain, find, and use technical documentation, using a "docs like code" approach.Open Source Plugins- further expand Backstage's customizability and functionality.
- Backstage Platfom
- Core
- Catalog
- Scaffolder (Software Templates)
- TechDocs
- Support Code Hosting Provider: GitHub, GitHub Enterprise, Bitbucket,
Azure DevOps, GitLab, GitLab Enterprise - Support Storage Provider: Local Filesystem of Backstage app, Google Cloud Storage (GCS), Amazon Web Service (AWS) S3, Azure Blob Storage, OpenStack Swift
- Support Code Hosting Provider: GitHub, GitHub Enterprise, Bitbucket,
What's current version?
Version 1.0 has been relaease on March, 17th.
安装Backstage.io应用
- 更新Ubuntu
sudo apt update- 更新Ubuntu - 安装Nodejs
- GitHub - nvm-sh/nvm: Node Version Manager - POSIX-compliant bash script to manage multiple active node.js versions
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash- 下载nvm安装脚本
export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
nvm install --lts - 安装Node LTS版本
Installation | Yarn (yarnpkg.com)
sudo apt install make
npm install --global yarn- 安装yarn
yarn --version- 检查yarn是否安装Git Guides - install git · GitHub
sudo apt-get install git-all- 安装git
git version- 检查git是否安装Install Docker Engine on Ubuntu | Docker Documentation
sudo apt-get remove docker docker-engine docker.io containerd runc- 卸载旧版本
sudo apt-get update- 更新Ubuntu
curl -fsSL https://get.docker.com -o get-docker.sh- 下载安装脚本
sudo sh get-docker.sh- 安装docker
sudo docker run hello-world- 测试docker是否安装成功
npx @backstage/create-app - 安装backstage
cd backstage/packages/backend
sudo apt-get install libcap2-bin
sudo setcap cap_net_bind_service=+ep `readlink -f \`which node\``
安装PostgreSQL
sudo apt-get install postgresql
sudo service postgresql start
sudo -u postgres psql
postgres=# ALTER USER postgres PASSWORD 'secret';
# From your Backstage root directory
cd packages/backend
yarn add pg
部署Docker容器
yarn install --frozen-lockfile
yarn tsc
yarn build
sudo chmod 666 /var/run/docker.sock
sudo docker image build . -f packages/backend/Dockerfile --tag backstage
sudo apt-get --purge remove apache*
sudo docker run -it -p 7007:7007 backstage
部署到Azure虚拟机
Create Azure VM with:
Standard B2s (2 vcpus, 4 GiB memory)
Linux (ubuntu 20.04)
Add Inbound Ports:
- HTTP 80
- HTTPS 443
- 3000
- 7007
Set IP address assignment with Static - 20.127.85.68
Name DNS name label: backstage2.eastus.cloudapp.azure.com
解决Localhost发布与证书的冲突问题
TechDocs API Discovery Returns Incorrect Base URL · Issue #4665 · backstage/backstage (github.com)
将本地Backstage代码提交远端Github代码库
git init
git remote add origin https://github.com/richardcuick/backstage.git
git add .
git commit -m "initial"
git pull --rebase origin master
git push origin HEAD:main
Backstage Plugins
git clone https://github.com/RoadieHQ/roadie-backstage-plugins.git
cd roadie-backstage-plugins
yarn install
yarn tsc
yarn build
Plugins container
cd roadie-backstage-plugin/plugins
cd backend/frontend
cd selected-plugin
Templates:
[req]
default_bits = 4096
default_md = sha256
distinguished_name = req_distinguished_name
x509_extensions = v3_req
prompt = no
[req_distinguished_name]
C = US
ST = VA
L = SomeCity
O = MyCompany
OU = MyDivision
CN = 20.127.85.68
[v3_req]
keyUsage = keyEncipherment, dataEncipherment
extendedKeyUsage = serverAuth
subjectAltName = @alt_names
[alt_names]
IP.1 = 20.127.85.68
sudo apt install net-tools
sudo su
netstat -anp |grep 3000
netstat -anp |grep 7000
node.js - Error: listen EACCES: permission denied 0.0.0.0:443 - Stack Overflow
https://stackoverflow.com/questions/69000077/error-listen-eacces-permission-denied-0-0-0-0443
sudo apt-get install libcap2-bin
sudo setcap cap_net_bind_service=+ep readlink -f \which node``
使用WSL2 Ubuntu安装Backstage.io要解决的问题
- 激活Windows Sub Linux系统。
- 如出现0x800701bc,参考win10 WSL2问题解决WslRegisterDistribution failed with error: 0x800701bc_first_Dance的博客-CSDN博客_0x800701bc解决并重启。
- 运行
sudo vi /etc/hosts,编辑hosts文件。 - 添加GitHub最新hosts到hosts文件。
npm config set registry https://registry.npm.taobao.org
WSL2 中访问宿主机 Windows 的代理 - ZingLix Blog
cat /etc/resolv.conf | grep nameserver | awk '{ print $2 }' - 获得宿主机IP地址
unset http_proxy
unset HTTP_PROXY
unset https_proxy
unset HTTPS_PROXY
unset ALL_PROXY
unset all_proxy
export http_proxy="http://172.18.96.1:1080"
export https_proxy="http://172.18.96.1:1080"
export all_proxy=http://172.19.144.1:1080
cd my-backstage-app
yarn dev
app:
title: Backstage App
baseUrl: http://0.0.0.0:3000
organization:
name: My Company
backend:
baseUrl: http://<public ip address>:7007
listen:
port: 7007
csp:
connect-src: ["'selft'", 'http:', 'https:']
upgrade-insecure-requests: false
cors:
origin: http://<public ip address>:3000
methods: [GET, POST, PUT, DELETE]
credentials: true
database:
client: better-sqlite3
connection: ':memory:'
cache:
store: memory
sudo apt-get install postgresql
sudo service postgresql start
sudo -u postgres psql
postgres=# ALTER USER postgres PASSWORD 'secret';
# From your Backstage root directory
cd packages/backend
yarn add pg
yarn install --frozen-lockfile
yarn tsc
yarn build
sudo chmod 666 /var/run/docker.sock
sudo docker image build . -f packages/backend/Dockerfile --tag backstage
sudo apt-get --purge remove apache*
sudo docker run -it -p 7007:7007 backstage
Create Azure VM with:
Standard B2s (2 vcpus, 4 GiB memory)
Linux (ubuntu 20.04)
Add Inbound Ports:
- HTTP 80
- HTTPS 443
- 3000
- 7007
Set IP address assignment with Static - 20.127.85.68
Name DNS name label: backstage2.eastus.cloudapp.azure.com
- 修改app-config.yaml将三个127.0.0.1地址分别修改为:
- 0.0.0.0
- 静态IP地址
- 静态IP地址
Map to 443, with error message:
This site can’t provide a secure connection
backend:
csp:
upgrade-insecure-requests: false
如何在 Ubuntu 20.04 上安装 Nginx - 知乎 (zhihu.com)
https://zhuanlan.zhihu.com/p/138007915
Fix localhost issue with HTTPS certificate
TechDocs API Discovery Returns Incorrect Base URL · Issue #4665 · backstage/backstage (github.com)
git init
git remote add origin https://github.com/richardcuick/backstage.git
git add .
git commit -m "initial"
git pull --rebase origin master
git push origin HEAD:main
安装Backstage.io应用的更多相关文章
- 安装 log.io 实时监控 php_error 日志
Log.io 实时监控 php_error.log 日志 开启 php_error 实时监控日志的第一步,要首先开启 php_error 的功能. vi php.ini 修改 PHP 配置文件,将 ; ...
- Nodejs npm安装socket.io报错解决办法
安装socket.io时,报错,提示需要安装Microsoft visual studio 2005 或 Net framework 2.0 sdk,没有找到vcbuild.exe,解决办法是安装 . ...
- win8安装mean.io详解
最近,老大说要安装mean.io,然后……我的win8华丽丽的就上战场了……这期间真是安装得要生要死……最终也终于“不辱使命”成功安装上了…… 废话不多说,进入正题啦 前提当然是电脑有node.环境… ...
- CentOS安装log.io
官网 http://logio.org/ log.io是运行在node.js之上的 可通过浏览器访问服务器日志 类似于tail -f命令 它只负责实时传输数据 而不会去存储历史数据 npm insta ...
- python安装与IO编程
<python爬虫开发与项目实战>基础篇(一) 一.python安装 1.python IDLE 下载官网:www.python.org 注:在选择安装组件时勾选所有组件,特别注意勾选pi ...
- npm安装socket.io时报错的解决方法(npm WARN enoent ENOENT: no such file or directory, open '/usr/local/nodejs/bin/package.json')
执行 npm install socket.io安装时报错: [root@WEB node_modules]# npm install socket.ionpm WARN enoent ENOENT: ...
- windows服务安装 System.IO.FileLoadException
报错如下: System.IO.FileLoadException: 未能加载文件或程序集“file:///D:\WindowsService\bin\Debug\WindowsService.exe ...
- Ubuntu安装开发者平台Backstage
Ubuntu安装开发者平台Backstage 什么是Backstage? Backstage是一个构建开发者门户的开源平台.通过支持一个集中的软件分类,Backstage可以保存并发布你的微服务和基础 ...
- socket.io安装部署
需要node.js环境 创建package.json npm init 下载相关依赖 npm install --save express@4.10.2npm会在当前目录下载所需要的依赖到node_m ...
随机推荐
- JavaSE高级编程之多线程
4. 多线程 4.1 基本概念:程序.进程和线程 程序.进程和线程 程序:为了完成特定的任务,用某种语言编写的一组指令的集合.程序是一段静态的代码,静态对象. 进程:是程序的一次执行过程或正在运行的程 ...
- Python:获取某一月的天数
import calendarcalendar.monthlen(2021,6)30calendar.monthrange(2021,6)(1, 30) calendar.monthrange( ye ...
- JZ-040-数组中只出现一次的数字
数组中只出现一次的数字 题目描述 一个整型数组里除了两个数字之外,其他的数字都出现了两次.请写程序找出这两个只出现一次的数字. 题目链接: 数组中只出现一次的数字 代码 /** * 标题:数组中只出现 ...
- Spring源码解析之八finishBeanFactoryInitialization方法即初始化单例bean
Spring源码解析之八finishBeanFactoryInitialization方法即初始化单例bean 七千字长文深刻解读,Spirng中是如何初始化单例bean的,和面试中最常问的Sprin ...
- 微服务从代码到k8s部署应有尽有系列(十三、服务监控)
我们用一个系列来讲解从需求到上线.从代码到k8s部署.从日志到监控等各个方面的微服务完整实践. 整个项目使用了go-zero开发的微服务,基本包含了go-zero以及相关go-zero作者开发的一些中 ...
- 如何使用DTM将App事件发送到Google Analytics
本文分享于华为开发者论坛<如何使用DTM将App事件发送到Google Analytics>,可观看视频具体集成指导. 作为一名开发者或App运营人员,实时获取用户在App中的行为数据是日 ...
- System x 服务器制作ServerGuide U盘安装Windows Server 2012 R2操作系统
以下内容来源于:联想官方知识库 http://iknow.lenovo.com.cn/detail/dc_154773.html 本例介绍以U盘方式,通过ServerGuide引导在System x ...
- 结合AngularJS实现拖拽
最近项目中要实现,左侧树向右侧树中元素的拖拽功能,开始在网上看了好多ng-drag等等操作,都没有实现预想的效果,偶然发现一篇博客,然后根据博客改编,实现了自己想要的效果.下面简单的分析一下实现过程. ...
- LGP5279题解
这题好牛逼啊... 虽然说也是 DP 套 DP,但是感觉比 TJOI 那题高明到哪里去了( 我们先考虑如何计算期望.如果设 \(f_i\) 为拿到 \(i\) 张牌后胡的方案数,这个并不是很好做,因为 ...
- 【死磕NIO】— 跨进程文件锁:FileLock
大家好,我是大明哥,一个专注于[死磕 Java]系列创作的程序员. [死磕 Java ]系列为作者「chenssy」 倾情打造的 Java 系列文章,深入分析 Java 相关技术核心原理及源码 死磕 ...