저는 Docker 데스크톱 커뮤니티 2.0.3을 실행하고 있습니다. docker 허브(hub.docker.com)에서 공식 nginx 및 Apache HTTP 서버 컨테이너를 실행했습니다. 컨테이너 이미지는 Debian 9를 기반으로 합니다. 그런 다음 taskel을 사용하여 Debian 표준 시스템 유틸리티를 설치해 보았습니다. 다음을 사용하여 컨테이너에서 터미널을 열었습니다.
docker exec -ti container_id bash
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%
문제는 다음과 같습니다.
- 스크린샷에 표시된 것처럼 taskel TUI(텍스트 사용자 인터페이스)는 열리지 않습니다.
- 위의 오류가 발생하고 설치가 완료되지 않습니다.
Docker 데스크탑은 macOS 10.12에 설치됩니다.
답변1
를 사용하려면 tasksel
를 설치해야 합니다 dialog
. 컨테이너에:
apt update && apt install -y dialog tasksel
그 다음에
tasksel install standard
일반적인 인터페이스로 작동합니다.
변수 를 전달할 필요가 없습니다 TERM
.
많은 표준 유틸리티는 컨테이너에서 많이 사용되지 않습니다. 그러나 이 작업을 수행하려면 다음 aptitude
대신 사용합니다 tasksel
.
apt update && apt install -y aptitude && \
aptitude install -y ~pstandard ~prequired ~pimportant
답변2
ncurses에는 다음 명령이 필요하다는 것이 밝혀졌습니다: https://stackoverflow.com/a/38774123/3341782 더 나은 해결책이 있는지 확실하지 않습니다.