Remover imagem Docker ao reconstruir o app

\n\nPodemos usar o comando de remoção de contêineres do docker ao reconstruir o aplicativo no arquivo app.yml ou no arquivo launcher?\n\ndocker image prune -a --force\n\nou\n\n./launcher cleanup\n\nSe você tiver alguma ideia sobre isso, por favor, responda a esta consulta\n\nobrigado antecipadamente :grinning:

Você pode executar ./launcher cleanup app primeiro para remover todos os contêineres parados.

Normalmente, você executa isso antes de reconstruir enquanto o contêiner mais recente ainda está em execução.

Olá @merefield

Estes comandos estão funcionando para mim: ./launcher cleanup app, mas na verdade adicionei estes comandos no arquivo app.yml ou nos arquivos do launcher.

Estou usando apenas um comando: ./launcher rebuild app. Posso colocar estes comandos nos arquivos que mencionei anteriormente?

O fato de isso nunca ser recomendado me leva a pensar que executar esse comando durante uma reconstrução pode não funcionar/não ser seguro.

Você poderia tentar executá-los em série em um script bash?

Você poderia tentar executá-los em série em um script bash?

Eu já criei um script bash personalizado para reconstruir o aplicativo e, após a reconstrução, removi imagens docker não utilizadas de um contêiner docker discourse

No entanto, estou interessado em saber se esses comandos podem ser adicionados ao arquivo app.yml ou ao arquivo launcher.

Eu os experimentei no site de staging uma vez, mas encontrei um problema no arquivo launcher. Embora os comandos funcionem para mim, usá-los resulta na remoção de todas as imagens.
docker image prune -a --force

Para resolver isso, incorporei um filtro para as últimas 24 horas no comando:
docker image prune -a --force --filter \"until=240h\" e essa solução é eficaz para mim.

Qual problema você está tentando resolver? Você tem pouco espaço em disco para criar um contêiner sem excluir o antigo? É perigoso, pois se algo der errado, você estará em apuros.

Você não pode fazer isso no launcher, pois esses comandos são executados dentro do contêiner. Você pode fazer isso em um script shell que faria isso e executaria o launcher.

2 curtidas