2015-07-20 22 views
16

Ho installato la finestra mobile sulla mia macchina virtuale host. E ora vuoi creare un file usando vi.Come eseguire vi sul contenitore docker?

Ma mi sta mostrando un errore:

bash: vi: command not found 
+0

vi può non essere installato all'interno del contenitore. Quale contenitore hai installato ed eseguito? –

+0

Devi essere più specifico. Stai cercando di eseguire vi all'interno di un contenitore, in tal caso su quale immagine si trova il contenitore? Con ogni probabilità non hai installato vi. (apt-get install vim) – wpp

+0

Dipende da quale 'immagine' stai costruendo. Molto probabilmente l'immagine che stai usando è così leggera che ha solo le cose che devi eseguire come immagine. È necessario installare manualmente i pacchetti necessari. – illusionist

risposta

18

contenitore probabilmente non hanno installato fuori dalla scatola.

Eseguire apt-get install vim nel terminale e si dovrebbe essere pronti a partire.

+0

Sì, ma preferisco 'vim-tiny' (Ubuntu) –

+8

Non dimenticare di eseguire prima l'aggiornamento di' apt-get'. – AVProgrammer

10

login nel contenitore con il seguente comando:

docker exec -it <container> bash 

Poi, eseguire il seguente comando.

apt-get update 
apt-get install vim 
0

In alternativa, mantenere le immagini della finestra mobile ridotte non installando editor non necessari. È possibile modificare i file tramite ssh dall'host finestra mobile al contenitore:

vim scp://[email protected]//path/to/document 
0

Il comando da eseguire dipende da ciò che immagine di base che si sta utilizzando.

Per Alpine, vi è installato come parte del SO di base. Installazione vim sarebbe:

apk -U add vim 

per Debian e Ubuntu:

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

Per CentOS, vi è di solito installato con il sistema operativo di base. Per vim:

yum install -y vim 

Questo dovrebbe essere fatto solo nel primo sviluppo. Una volta ottenuto un contenitore funzionante, le modifiche ai file devono essere apportate all'immagine o alle configurazioni memorizzate all'esterno del contenitore. Aggiorna il tuo Dockerfile e altri file che usa per creare una nuova immagine. Questo certamente non dovrebbe essere fatto in produzione poiché i cambiamenti all'interno del contenitore sono di tipo effimero e andranno persi quando il contenitore viene sostituito.

0

Per installare all'interno del vostro contenitore di Docker è possibile eseguire il comando

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

Ma questa sarà limitata al contenitore in cui è installato vim. per renderlo disponibile a tutti i contenitori, modificare il Dockerfile e aggiungere

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

o si può anche estendere l'immagine nella nuova Dockerfile e aggiungere sopra comando. Per esempio.

FROM < image name >

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

Problemi correlati