Red Hat Training
A Red Hat training course is available for RHEL 8
5.5. Funcionando Buildah em um container
O procedimento demonstra como executar o Buildah em um container e criar um container funcional com base em uma imagem.
Procedimento
Entrar no registro.redhat.io
$ podman login registry.redhat.io Username: myuser@mycompany.com Password: *********** Login Succeeded!
Puxe e execute a imagem
registry.redhat.io/rhel8/buildah:# podman run --rm --device /dev/fuse -it registry.redhat.io/rhel8/buildah /bin/bash
-
A opção
--rmremove a imagemregistry.redhat.io/rhel8/buildahapós a saída do contêiner. -
A opção
--deviceadiciona um dispositivo hospedeiro ao contêiner.
-
A opção
Criar um novo container usando uma imagem
registry.access.redhat.com/ubi8:# buildah --storage-opt=overlay.mount_program=/usr/bin/fuse-overlayfs from registry.access.redhat.com/ubi8 ... ubi8-working-container
-
A opção
--storage-optdefine o driver de armazenamento. Esta opção anula todas as opções configuradas em/etc/containers/storage.confeSTORAGE_OPTSvariável de ambiente. -
O
/usr/bin/fuse-overlayfsé uma implementação do FUSE (Filesystem in Userspace) e permite que usuários não root criem seus sistemas de arquivos sem modificar o código do kernel.
-
A opção
Execute o comando
ls /dentro do contêinerubi8-working-container:# buildah --storage-opt=overlay.mount_program=/usr/bin/fuse-overlayfs run --isolation=chroot ubi8-working-container ls / bin boot dev etc home lib lib64 lost+found media mnt opt proc root run sbin srv
Para listar todas as imagens em um depósito local, entre:
# buildah images REPOSITORY TAG IMAGE ID CREATED SIZE registry.access.redhat.com/ubi8 latest ecbc6f53bba0 5 weeks ago 211 MB
Para listar os recipientes de trabalho e suas imagens de base, entre:
# buildah containers CONTAINER ID BUILDER IMAGE ID IMAGE NAME CONTAINER NAME 0aaba7192762 * ecbc6f53bba0 registry.access.redhat.com/ub... ubi8-working-container
Para empurrar a imagem
registry.access.redhat.com/ubi8para um registro local localizado emregistry.example.com:# buildah push ecbc6f53bba0 registry.example.com:5000/ubi8/ubi
Recursos adicionais
- Para mais informações sobre como executar o Buildah em um contêiner, veja as Melhores práticas para executar o Buildah em um artigo de Daniel Walsh sobre contêineres.