Otwieram interaktywną powłokę w kontenerze docker w ten sposób
sudo docker exec -t -i {container_name} bash
Jak dotąd dobrze, ale próba uruchomienia nanoskutkuje:
Błąd podczas otwierania terminala: nieznany.
Otwieram interaktywną powłokę w kontenerze docker w ten sposób
sudo docker exec -t -i {container_name} bash
Jak dotąd dobrze, ale próba uruchomienia nanoskutkuje:
Błąd podczas otwierania terminala: nieznany.
Odpowiedzi:
Myślę, że może to być związane z problemem Docker # 9299 .
Istnieją pewne obejścia omówione w tym numerze:
-t).export TERM=xterm)TERMtak.
TERM=xterm-colorwydaje się, że działa tylko dla mnie. odpowiedź błędu serwera .
Uruchom komendę: export TERM=xterm
Możesz dodać
ENV TERM xterm
do pliku Dockerfile, jeśli będziesz regularnie używać edytora. Mamy to ustawienie w naszym podstawowym kontenerze, ponieważ stale debugujemy rzeczy za pomocą vi / emacs.
docker exec -it [CONTAINER_ID] /bin/bash -c "export TERM=xterm; exec bash"działa dobrze. Właśnie dodałem ENV TERM xtermprzed EXPOSEoświadczeniem, czy to prawda?
ENV TERM xtermprzed RUNpoleceniem.
docker exec -it id_container bash
apt-get update
apt-get install nano
export TERM=xterm
Zrobiłem obejście, w moim .bashrc dodałem:
alias nano='export TERM=xterm && nano'
W takim przypadku błąd już się nie pojawia
Uruchom to polecenie w swoim kontenerze apk add nano
U mnie export TERM=xtermpowoduje pewne problemy z wyświetlaniem opisane tutaj:
/superuser/1172222/issues-editing-files-with-nano-in-bash-windows-10
W takim przypadku export TERM=linuxmoże działać lepiej.