Erros ao tentar instalar pacotes usando o Taskel em contêineres Debian 9

Erros ao tentar instalar pacotes usando o Taskel em contêineres Debian 9

Estou executando a comunidade de desktop Docker 2.0.3. Executei os contêineres oficiais do servidor nginx e Apache HTTP do docker hub (hub.docker.com). As imagens do contêiner são baseadas no Debian 9. Em seguida, tentei instalar os utilitários de sistema padrão do Debian usando o tasksel. Abri um terminal no contêiner usando:

docker exec -ti container_id bash

Tentei executar a instalação do Taskel

# tasksel install standard
debconf: unable to initialize frontend: Dialog
debconf: (No usable dialog-like program is installed, so the dialog based frontend cannot be used. at /usr/share/perl5/Debconf/FrontEnd/Dialog.pm line 76.)
debconf: falling back to frontend: Readline
debconf: unable to initialize frontend: Readline
debconf: (Can't locate Term/ReadLine.pm in @INC (you may need to install the Term::ReadLine module) (@INC contains: /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.24.1 /usr/local/share/perl/5.24.1 /usr/lib/x86_64-linux-gnu/perl5/5.24 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.24 /usr/share/perl/5.24 /usr/local/lib/site_perl /usr/lib/x86_64-linux-gnu/perl-base .) at /usr/share/perl5/Debconf/FrontEnd/Readline.pm line 7.)
debconf: falling back to frontend: Teletype
Installing packages
-------------------

..100%

Os problemas são:

  • Ele não abre o Taskel TUI (interface de usuário de texto), como visto na captura de tela.
  • Recebo os erros acima e não conclui a instalação.

A área de trabalho Docker está instalada no macOS 10.12

Tarefa

Responder1

Para usar tasksel, você precisa instalar dialog; em seu contêiner:

apt update && apt install -y dialog tasksel

Então

tasksel install standard

funcionará, com a interface usual.

Você não precisa passar a TERMvariável.

Muitos dos utilitários padrão não são muito úteis em um contêiner; no entanto, se eu fizesse isso, usaria aptitudeem vez de tasksel:

apt update && apt install -y aptitude && \
aptitude install -y ~pstandard ~prequired ~pimportant

Responder2

Acontece que ncurses requer este comando: https://stackoverflow.com/a/38774123/3341782 Não tenho certeza se existe uma solução melhor.

informação relacionada