start run hub ejecutar crear contenedor compose linux docker vi

linux - run - Cómo ejecutar vi en el contenedor docker?



docker-compose (5)

He instalado Docker en mi máquina virtual de host. Y ahora quiero crear un archivo usando vi .

Pero me está mostrando un error:

bash: vi: command not found


Su contenedor probablemente no lo haya instalado de la caja.

Ejecute apt-get install vim en el terminal y debería estar listo para funcionar.


inicie sesión en el contenedor con el siguiente comando:

docker exec -it <container> bash

Luego, ejecuta el siguiente comando.

apt-get update apt-get install vim


Alternativamente, mantenga pequeñas las imágenes de su docker al no instalar editores innecesarios. Puede editar los archivos en ssh desde el host Docker al contenedor:

vim scp://remoteuser@container-ip//path/to/document


El comando para ejecutar depende de la imagen base que esté utilizando.

Para Alpine, vi se instala como parte del sistema operativo base. La instalación de vim sería:

apk -U add vim

Para Debian y Ubuntu:

apt-get update && apt-get install -y vim

Para CentOS, vi generalmente se instala con el sistema operativo base. Para vim :

yum install -y vim

Esto solo debe hacerse al principio del desarrollo. Una vez que obtenga un contenedor que funcione, los cambios a los archivos se deben hacer a su imagen o configuraciones almacenadas fuera de su contenedor. Actualiza tu Dockerfile y otros archivos que usa para construir una nueva imagen. Esto ciertamente no debería hacerse en producción, ya que los cambios dentro del contenedor son efímeros por diseño y se perderán cuando el contenedor sea reemplazado.


Para instalar dentro de su contenedor Docker, puede ejecutar el comando

docker exec apt-get update && apt-get install -y vim

Pero esto se limitará al contenedor en el que vim está instalado. Para que esté disponible para todos los contenedores, edite el archivo Docker y agregue

EJECUTAR apt-get update && apt-get install -y vim

o también puede extender la imagen en el nuevo archivo Docker y agregar el comando anterior. P.ej.

FROM <nombre de la imagen>

EJECUTAR apt-get update && apt-get install -y vim