Errores al intentar instalar paquetes usando taskel en contenedores de Debian 9

Errores al intentar instalar paquetes usando taskel en contenedores de Debian 9

Estoy ejecutando la comunidad de escritorio Docker 2.0.3. Ejecuté los contenedores oficiales del servidor HTTP nginx y Apache desde Docker Hub (hub.docker.com). Las imágenes del contenedor se basan en Debian 9. Luego, intenté instalar las utilidades del sistema estándar de Debian usando taskel. Abrí una terminal en el contenedor usando:

docker exec -ti container_id bash

Intenté ejecutar la instalación de 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%

Los problemas son:

  • No abre la TUI (interfaz de usuario de texto) de tareas como se ve en la captura de pantalla.
  • Recibo los errores anteriores y no finaliza la instalación.

El escritorio Docker está instalado en macOS 10.12

Panel de tareas

Respuesta1

Para usarlo tasksel, necesita instalar dialog; en tu contenedor:

apt update && apt install -y dialog tasksel

Entonces

tasksel install standard

funcionará, con la interfaz habitual.

No es necesario pasar la TERMvariable.

Muchas de las utilidades estándar no son de mucha utilidad en un contenedor; sin embargo, si tuviera que hacer esto, usaría aptitudeen lugar de tasksel:

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

Respuesta2

Resulta que ncurses requiere este comando: https://stackoverflow.com/a/38774123/3341782 No estoy seguro de si hay una solución mejor.

información relacionada