Criando Imagens com Buildah
Buildah é especializada na construção de imagens OCI. Os comandos de Buildah replicam todos os comandos encontrados em um Dockerfile. Isso permite a construção de imagens com e sem Dockerfiles, sem exigir nenhum privilégio de root. O objetivo final da Buildah é fornecer uma interface de CoreUtils de nível inferior para construir imagens.
Criando sua imagem
Buildah fornece uma ferramenta de linha de comando que pode ser usada para:
Instalação Fedora Workstation/Spins/Server:
sudo dnf install buildah -y
Instalação Fedora IoT/CoreOS/SilverBlue:
sudo rpm-ostree install buildah
Para ver a lista de comandos:
buildah -h
buildah from fedora E o nome da nossa imagem base ficou "fedora-working-container".
Agora temos a imagem do fedora onde vamos trabalhar nela:
buildah images Instale o Apache:
buildah run fedora-working-container dnf install httpd -y Vamos criar um arquivo "index.html":
echo " teste com buildah" > index.html
Agora vamos copiar nosso "index.html" para dentro da imagem:
buildah copy fedora-working-container index.html /var/www/html/index.html Vamos ajustar a imagem para ao iniciar o contêiner, já iniciar o Apache:
buildah config --entrypoint "/usr/sbin/httpd -DFOREGROUND" fedora-working-container Vamos efetuar o commit da imagem:
buildah commit fedora-working-container fedora-httpd Vamos verificar a imagem:
buildah images Agora vamos subir o nosso contêiner:
podman run -d --name fedora-httpd -p 8080:80 fedora-httpd E nosso contêiner está rodando:
podman ps Podemos testar:
- criar um contêiner do zero, ou usando uma imagem como ponto de partida;
- criar uma imagem a partir de um contêiner, ou por meio das instruções em um Dockerfile;
- as imagens podem ser construídas no formato de imagem OCI, ou no formato de imagem docker upstream tradicional;
- montar um sistema de arquivos raiz de contêiner para manipulação;
- desmontar o sistema de arquivos raiz de um contêiner;
- excluir um contêiner ou uma imagem;
- renomear um contêiner local.
Instalação Fedora Workstation/Spins/Server:
sudo dnf install buildah -y
Instalação Fedora IoT/CoreOS/SilverBlue:
sudo rpm-ostree install buildah
Para ver a lista de comandos:
buildah -h
Como criar nossa primeira imagem
Vamos usar o Fedora como base para criar a imagem:buildah from fedora E o nome da nossa imagem base ficou "fedora-working-container".
Agora temos a imagem do fedora onde vamos trabalhar nela:
buildah images Instale o Apache:
buildah run fedora-working-container dnf install httpd -y Vamos criar um arquivo "index.html":
echo " teste com buildah" > index.html
Agora vamos copiar nosso "index.html" para dentro da imagem:
buildah copy fedora-working-container index.html /var/www/html/index.html Vamos ajustar a imagem para ao iniciar o contêiner, já iniciar o Apache:
buildah config --entrypoint "/usr/sbin/httpd -DFOREGROUND" fedora-working-container Vamos efetuar o commit da imagem:
buildah commit fedora-working-container fedora-httpd Vamos verificar a imagem:
buildah images Agora vamos subir o nosso contêiner:
podman run -d --name fedora-httpd -p 8080:80 fedora-httpd E nosso contêiner está rodando:
podman ps Podemos testar:

Guias de Referência
- GitHub - containers/buildah: A tool that facilitates building OCI images
- How to build container images with Buildah - Fedora Magazine
- Using buildah :: Fedora Docs
Bom artigo.
___________________________________________________________