[Tutorial] Buildah - Crie suas imagens de containers

Buildah fornece uma ferramenta de linha de comando que pode ser usada para

  • criar um contêiner de trabalho, do zero ou usando uma imagem como ponto de partida

  • criar uma imagem, a partir de um contêiner de trabalho 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 de trabalho para manipulação

  • desmontar o sistema de arquivos raiz de um contêiner de trabalho
    usar o conteúdo atualizado do sistema de arquivos raiz de um contêiner

  • como uma camada do sistema de arquivos para criar uma nova imagem
    excluir um contêiner de trabalho ou uma imagem

  • renomear um container 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 comando

$ buildah -h

Agora Vamos Criar a 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

Agora vamos ajustar a imagem para ao iniciar o container já inicia o apache

$ buildah config --entrypoint "/usr/sbin/httpd -DFOREGROUND" fedora-working-container

Agora vamos efetuar o commit da imagem

$ buildah commit fedora-working-container fedora-httpd

Vamos verificar a imagem

$ buildah images

Agora vamos subir o nosso container

$ podman run -d --name fedora-httpd -p 8080:80 fedora-httpd

E esta rodando o nosso container

$ podman ps 

Podemos Testar

Guia de Referência:

https://github.com/containers/buildah

https://fedoramagazine.org/daemon-less-container-management-buildah/

https://docs.fedoraproject.org/en-US/iot/buildah/

Comentários