This is repo used to showcase Backstage with the Bookinfo application (hence book-stage-info).
The source for the bookinfo service is from the Istio repo.
Check out my YouTube channel for Backstage videos:
-
Part 1: What is Backstage? Getting familiar with Backstage, basic set up with database, Github integration and Kubernetes.
-
Part 2: What is Backstage? Building templates and plugins.
The Backstage app is in the backstage
folder. Before you run the app, make sure you set up the database and configure environment variables.
Backstage is configured to use the local postgres database. You can run the database using docker:
docker run --name some-postgres -p 5432:5432 -e POSTGRES_PASSWORD=mysecretpassword -d postgres
If you want to use a different database, you can change the database configuration in the backstage/app-config.yaml
file.
Before you run the app, you need to set the environment variables for Github integration (GITHUB_TOKEN
) and auth (GITHUB_CLIENT_ID
and GITHUB_CLIENT_SECRET
).
export GITHUB_TOKEN=your-github-token
export GITHUB_CLIENT_ID=your-github-client-id
export GITHUB_CLIENT_SECRET=your-github
Check the app-config.yaml
for links to the documentation on how to get these values.
To run the app, you can use the following commands:
cd backstage
yarn dev
Before you run the app for the first time, make sure you installed the dependencies (yarn install
).
The configuration (app-config.yaml
) assumes you have a local Kubernetes cluster running (i.e. kubectl proxy
) that Backstage app can access. Additionally, it's assumed you have deployed the Bookinfo application to the cluster. Alternatively, you can individually deploy services using the manfiests in the /deploy
folder.
Once you have the Kubernetes cluster setup, Bookinfo deployed and the proxy running, you'll see a "Kubernetes" tab on the components page: