89luca89 / 89luca89/distrobox

Podman's default logging can make podman crash when sending large amounts of data on stdout - consider disabling logging?

Aberta
#1,148 1 comentário 0 reações 0 responsáveis Ver no GitHub
question
Linguagem predominante
Go
Estrelas
13k
Forks
541
Merge médio
20h 47min
PRs com merge (30d)
4

Descrição

I recently managed to trigger the following podman issue while using distrobox:
https://github.com/containers/podman/issues/13779

Per default the stdout and stderr of a podman container are logged via journald and this can apparently trigger rate-limiting and cause an interactive distrobox session to terminate.

This can be reproduced by following the steps in the linked podman issue like this:

```
distrobox create debian:12 --name deb12
distrobox enter -a '--log-level debug' deb12
cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 20 | head -n 9999
```
This triggers the error:
```
DEBU[0006] Container exec session completed with exit code -1
Error: timed out waiting for file : internal libpod error
```

Running distrobox create with the parameter -a '--log-driver none' prevents this issue.

This seems like it might be a reasonable thing to set by default for an interactive session as was also discussed in the podman issue.

Alternatively it may be useful to document this behavior and / or offer a shortcut command line parameter to deactivate logging.

I'm a bit unsure if this can be fixed in podman itself unless they decide to default to disabling logging in interactive sessions because this appears to be triggered by an interaction between podman and journald that may not be too simple to circumvent.

Guia de contribuição

Abrir o guia de contribuição

Direção de pesquisa

Verifique como o distrobox cria e acessa contêineres, particularmente os argumentos de linha de comando passados ao podman. A correção provavelmente envolve modificar os argumentos padrão para incluir '--log-driver none' em sessões interativas. Verifique o código-fonte do distrobox em busca da lógica de criação de contêineres, teste a alteração com as etapas de reprodução e certifique-se de que ela não interrompa nenhuma outra funcionalidade.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
docker, go, shell
Domínio
cli, developer-experience
Tipo de issue
Bug
Dificuldade
3/5
Tempo estimado
1-2 dias
Status de atividade
Estagnada
Clareza
Razoavelmente clara
Facilidade para iniciantes
45/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.