9.4.2. Usando buildah copy e buildah config para modificar um recipiente
Com buildah copy, você pode copiar arquivos para um recipiente sem montá-lo primeiro. Aqui está um exemplo, usando o myecho-working-container criado (e não montado) na seção anterior, para copiar um novo script para o container e alterar a configuração do container para executar esse script por padrão.
Crie um roteiro chamado newecho e torne-o executável:
cat newecho echo "I changed this container" chmod 755 newecho
# cat newecho
echo "I changed this container"
# chmod 755 newecho
Criar um novo recipiente de trabalho:
buildah from myecho:latest
# buildah from myecho:latest
myecho-working-container-2
Copiar newecho para /usr/local/bin dentro do contêiner:
buildah copy myecho-working-container-2 newecho /usr/local/bin
# buildah copy myecho-working-container-2 newecho /usr/local/bin
Alterar a configuração para usar o script newecho como o novo ponto de entrada:
buildah config --entrypoint" /bin/sh -c /usr/local/bin/newecho" myecho-working-container-2
# buildah config --entrypoint" /bin/sh -c /usr/local/bin/newecho" myecho-working-container-2
Execute o novo container, o que deve resultar na execução do comando newecho:
buildah run myecho-working-container-2
# buildah run myecho-working-container-2
I changed this container
Se o recipiente se comportasse como você esperava, você poderia então comprometê-lo com uma nova imagem (mynewecho):
buildah commitdah myecho-working-container-2 containerss-storage:mynewecho
# buildah commitdah myecho-working-container-2 containerss-storage:mynewecho