Запуск nano в контейнере docker



Я открываю интерактивную оболочку в контейнер docker, например



sudo docker exec -t -i {container_name} bash


до сих пор так хорошо, но пытается бежать nano результаты:




ошибка открытия терминала: неизвестно.


928   6  

6 ответов:

Я думаю, что это может быть связано с Докер Проблема #9299.

есть некоторые обходные пути, прокомментированные в этом вопросе:

  • запустите контейнер, выделяющий псевдо-TTY (опция -t).
  • экспорт переменной среды $TERM=xterm в процессе контейнера выполняется в exec (т. е.:export TERM=xterm)

выполнить команду : export TERM=xterm

вы можете добавить

ENV TERM xterm

в ваш Dockerfile, если вы будете использовать редактор регулярно. У нас есть эта настройка в нашем базовом контейнере, так как мы постоянно отлаживаем вещи с помощью vi/emacs.

как $TERM уже было установлено значение xterm но по-прежнему не работает для меня, вот способ, который работает: docker exec -it [CONTAINER_ID] /bin/bash -c "export TERM=xterm; exec bash"

docker exec -it id_container bash
apt-get update
apt-get install nano
export TERM=xterm

Я сделал обходной путь, в моем .bashrc я добавил:

alias nano='export TERM=xterm && nano'

в данном случае ошибка больше не появляется

Comments

    Ничего не найдено.