Guia de Instalação e Configuração do Backstage
April 29, 2024 · View on GitHub
O Backstage é uma plataforma de desenvolvimento de software open-source criada pelo Spotify. É projetado para ajudar as equipes a gerenciar seus serviços de software e automações, integrando as melhores práticas no local de trabalho. Com o Backstage, você pode criar uma visão clara de todos os seus serviços, permitindo uma melhor orientação para os desenvolvedores e uma operação mais eficiente.
Pré-Requisitos
Antes de iniciar, é necessário certificar-se de que já tenha sido instalado na máquina as seguintes dependências:
- Node.js (v14 ou superior)
- Yarn
- Docker
Instalação do Backstage
- Primeiro, cria-se a aplicação Backstage com o comando:
npx @backstage/create-app@latest --skip-install
-
Durante a execução, é necessário definir um nome para a aplicação (que nesse caso foi jordan-backstage)
-
Depois de criar a aplicação, deve-se navegar até a pasta da aplicação e instalar as dependências necessárias com:
cd [nome-da-aplicação] // jordan-backstage
yarn install
- Caso o Yarn esteja desatualizado, basta executar:
npm install --global yarn
Preparação do Build
- Em seguida, é necessário instalar as dependências necessárias com a integridade do arquivo lock mantida:
yarn install --frozen-lockfile
- Após essa etapa, vem a preparação dos tipos com o TypeScript
yarn tsc
- O próximo passo é construir o backend com:
yarn build:backend
Ajuste do Dockerfile
- O projeto deve ser aberto no Visual Studio Code, em seguida, deve-se navegar até packages/backend/Dockerfile e substituir seu conteúdo pelo seguinte Dockerfile, que foi ajustado a partir do guia oficial:
FROM node:18-bookworm-slim
# Instala as dependências necessárias para o plugin scaffolder-backend
RUN apt-get update && apt-get install -y python3 g++ build-essential && yarn config set python /usr/bin/python3
# Instala dependências para sqlite3, se necessário
RUN apt-get update && apt-get install -y libsqlite3-dev
USER node
WORKDIR /app
ENV NODE_ENV development
COPY --chown=node:node yarn.lock package.json packages/backend/dist/skeleton.tar.gz ./
RUN tar xzf skeleton.tar.gz && rm skeleton.tar.gz
RUN yarn install --frozen-lockfile --production --network-timeout 300000
COPY --chown=node:node packages/backend/dist/bundle.tar.gz app-config*.yaml ./
RUN tar xzf bundle.tar.gz && rm bundle.tar.gz
CMD ["node", "packages/backend", "--config", "app-config.yaml"]
Rodando o backstage com docker
- A imagem Docker deve ser construída sem reutilizar camadas de cache:
docker image build . -f packages/backend/Dockerfile --tag backstage --no-cache
- O container deve ser executado, mapeando a porta 7007:
docker run -it -p 7007:7007 backstage
O que se pode aprender com o Backstage?
- Utilizar o Backstage facilita a gestão de infraestruturas, recursos e automações, promovendo a integração contínua e centralizando as ferramentas de desenvolvimento. Ele fornece uma visão clara sobre os serviços de desenvolvimento, essencial para grandes equipes e organizações.
Importância do Backstage
A importância do Backstage está em sua capacidade de simplificar a complexidade operacional e técnica, funcionando como uma plataforma única onde desenvolvedores encontram informações sobre software, dados e ferramentas, melhorando a eficiência e colaboração entre equipes.
Evidências
