Por mi vida, parece que no puedo entender por qué ctrl - p y ctrl - n no funcionan como se supone que deben hacerlo en las imágenes de Docker con las que he estado trabajando. ctrl - p debería funcionar como la flecha hacia arriba , pero generalmente tengo que presionarlo dos veces para obtener el último comando que ejecuté. Y recorre la historia en lo que parece ser una moda aleatoria.
Tal vez alguien pueda ayudarme a darle algún sentido a esto.
docker run -it buildpack-deps:trusty # run a Linux based image root@74cbcf321fae:/# ls bin boot dev etc home lib lib64 ... root@74cbcf321fae:/# touch hello Si presiono aquí, debería mostrar el comando touch , seguido de ls . Sin embargo, si presiono Ctrl - p , no aparece nada la primera vez. Cuando lo presiono de nuevo, ls aparece mágicamente.
¿Puede alguien ayudarme a darle sentido a esto? No puedo vivir sin Ctrl - p y Ctrl - n .
Parece que esto se eliminó (o movió) en Docs, pero solía vivir aquí: https://docs.docker.com/engine/reference/commandline/attach/
Editar : parece que hacen referencia a lo siguiente en la documentación de los archivos de configuración .
La secuencia de comandos para separarse de un contenedor docker es ctrl - p ctrl - q , por lo que ctrl - p no funciona como se esperaba. Cuando presiona ctrl - p , la ventana acoplable está esperando ctrl - q , por lo que no sucede nada.
Puede usar el nuevo argumento --detach-keys para docker run para anular esta secuencia para que sea algo diferente a ctrl - p :
docker run -ti --detach-keys="ctrl-@" ubuntu:14.04 bash $# ls $# <--- Ctrl-P here will display ls now $# <--- Ctrl-@ here will detach from the running container Si lo desea, puede agregar esto a su archivo ~/.docker/config.json para conservar este cambio:
{ ... "detachKeys": "ctrl-@", ... }Se pueden encontrar más detalles sobre esto aquí: https://github.com/docker/docker/pull/15666 ya que ya no puedo encontrarlo en los documentos.