J'ouvre un shell interactif dans un conteneur docker comme ça
sudo docker exec -t -i {container_name} bash
Jusqu'ici tout va bien mais essayer d'exécuter les nano
résultats:
Erreur lors de l'ouverture du terminal: inconnu.
J'ouvre un shell interactif dans un conteneur docker comme ça
sudo docker exec -t -i {container_name} bash
Jusqu'ici tout va bien mais essayer d'exécuter les nano
résultats:
Erreur lors de l'ouverture du terminal: inconnu.
Réponses:
Je pense que cela peut être lié au problème Docker # 9299 .
Il y a quelques solutions de contournement commentées dans ce problème:
-t
).export TERM=xterm
)TERM
a fonctionné.
TERM=xterm-color
semble fonctionner que pour moi. réponse serverfault .
Exécutez la commande: export TERM=xterm
Vous pouvez ajouter
ENV TERM xterm
à votre Dockerfile si vous comptez utiliser l'éditeur régulièrement. Nous avons ce paramètre dans notre conteneur de base, car nous débogage constamment des choses avec vi / emacs.
docker exec -it [CONTAINER_ID] /bin/bash -c "export TERM=xterm; exec bash"
fonctionne bien. Je viens d'ajouter ENV TERM xterm
avant la EXPOSE
déclaration, est-ce exact?
ENV TERM xterm
avant la RUN
commande.
docker exec -it id_container bash
apt-get update
apt-get install nano
export TERM=xterm
J'ai fait une solution de contournement, dans mon .bashrc j'ai ajouté:
alias nano='export TERM=xterm && nano'
Dans ce cas, l'erreur n'apparaît plus
Pour moi, cela export TERM=xterm
provoque des problèmes d'affichage décrits ici:
/superuser/1172222/issues-editing-files-with-nano-in-bash-windows-10
Dans ce cas, export TERM=linux
cela fonctionne mieux.
Exécutez cette commande dans votre conteneur apk add nano