Este artigo tem objetivo construir imagem de contêiner segura e atualizada para o chart helm do Keycloak da Bitnami. Utilizando os projetos Apko e Melange, garantimos que a imagem esteja livre de Vulnerabilidades e Exposições Comuns (CVEs), oferecendo uma solução robusta e segura para ambientes de produção.
Anteriormente, escrevi outro artigo que demonstra o uso das imagens bases do Wolfi, uma distribuição Linux segura que usa o Alpine para tornar as imagens dos seus projetos mais segura:
Wolfi com Dockerfiles | Uma Abordagem Segura e Eficiente
O Keycloak da Bitnami é um projeto que automatiza a construção de uma imagem do Keycloak para uso com o Bitnami, visando manter a compatibilidade com projetos que utilizam os charts helm da Bitnami e com um foco especial em segurança. Utilizando ferramentas fornecidas pela Chainguard, através dos projetos Apko e Melange, é possível aplicar correções de CVEs em imagens Docker, garantindo que a imagem resultante esteja protegida contra vulnerabilidades graves conhecidas.
Link: https://bitnami.com/stack/keycloak/helm
O Melange é uma ferramenta de construção de pacotes APK que utiliza pipelines declarativos para criar os pacotes. É parte integrante das ferramentas de código aberto usadas pelo Wolfi, o sistema operacional que constroi as imagens do Chainguard, o qual seria possível construir pacotes personalizados quando as dependências necessárias não estão disponíveis no Wolfi, garantindo assim a flexibilidade e compatibilidade necessárias para diferentes projetos.
Link: https://edu.chainguard.dev/open-source/build-tools/melange/overview/
O Apko é uma ferramenta para trabalhar com imagens da Chainguard, o qual seria inspirado na ferramenta ko build
e facilita a criação de imagens de contêineres seguras, no qual automatiza a inclusão de pacotes com as correções imediatas de vulnerabilidades conhecidas no mercado.
Link: https://edu.chainguard.dev/open-source/build-tools/apko/overview/
Antes de iniciar a construção da imagem de contêiner, certifique-se de ter os seguintes pré-requisitos instalados: