2017-06-22 2 views

Répondre

2

Je pense que je peux dire de l'image que vous parlez pas vraiment à propos docker logs (ce qui est une commande docker réelle docker que vous ne l'avez pas run). Il semble que vous vouliez savoir pourquoi la sortie de votre console n'imprime pas avec une bonne mise en forme après avoir accédé à une invite de commande à l'intérieur d'un conteneur avec docker exec -it ... bash.

Je soupçonne que la longueur de votre PS1 est mal calculée, soit à l'intérieur du conteneur, soit sur votre machine hôte. Lisez à ce sujet here. L'invite à l'intérieur du conteneur ressemble à l'invite standard et l'invite sur votre machine hôte est très sophistiquée, donc je parie que vous avez un problème avec la PS1 sur votre hôte OS X.

Pour voir si votre machine hôte est à l'origine du problème, tomber dans un sous-shell avec une PS1 minimale, puis exécutez Docker et voir si le problème persiste:

$ bash --rcfile <(echo "PS1='$ '") -i 
$ docker exec -it ... bash 
# ls 

Si le problème disparaît, il est problème avec le PS1 sur votre machine hôte. Fixez-le en permanence en suivant les instructions dans le lien ci-dessus afin que la longueur est calculée correctement.

+0

Un grand merci pour votre commentaire et j'ai essayé votre code, mais ne peut toujours pas afficher le message avec un format correct. Comme j'ai installé le "oh-my-zsh" pour le terminal. Est-ce que c'est lié au réglage "oh-my-zsh" ou à tout autre paramètre que je peux changer pour tester? –

+0

Il semble que je réinstalle le docker puis de nouveau à la normale. Merci. –

+1

Ce que l'OP signale est un problème avec l'initialisation de TTY sur certaines versions de Docker (maintenant corrigé en amont); rien du tout à voir avec la valeur de PS1. Nous avons déjà plusieurs questions préexistantes à ce sujet sur SO (doublon marqué de l'un l'autre). –