Il est presque certain que la distribution Linux que vous exécutez dans un conteneur Docker n'a pas Vim ou tout autre éditeur de texte installé par défaut.
Un moyen rapide d'installer l'éditeur de texte dans votre conteneur Docker serait d'entrer dans le conteneur en cours d'exécution :
docker exec -it container_name_or_ID sh
Vérifiez quelle distribution Linux il utilise :
cat /etc/os-release
Et utilisez ensuite le gestionnaire de paquets de la distribution pour l'installer.
Pour installer Vim sur Ubuntu ou Debian, utilisez la commande apt :
apt update
apt install vim
Pour l'installer sur CentOS ou Red Hat, utilisez la commande Yum :
yum install vim
Et si c'est Alpine Linux, utilisez la commande apk :
apk update
apk add vim
Cela devrait vous permettre d'exécuter et d'utiliser Vim dans le conteneur en cours d'exécution. Mais il y a un gros problème avec cette approche. Si vous exécutez un nouveau conteneur avec la même image Docker, la commande Vim que vous aviez installée ne sera pas présente dans ce nouveau conteneur. Vous devrez l'installer à nouveau.
Si vous souhaitez que tous les conteneurs créés à l'aide de l'image Docker donnée aient également Vim installé par défaut, vous devez ajouter les commandes d'installation dans le Dockerfile.
J'espère que vous savez comment créer une image Docker personnalisée avec Dockerfile. Sinon, laissez-moi vous rappeler rapidement avec un exemple simple d'Alpine Linux.
Créez un nouveau fichier nommé Dockerfile :
touch Dockerfile
Ouvrez maintenant ce Dockerfile pour le modifier dans un éditeur, ajoutez-y les lignes suivantes et enregistrez-le :
FROM alpine:latest
RUN apk update
RUN apk add vim
Fondamentalement, vous demandez à Docker d'extraire la dernière image de docker Alpine, puis d'exécuter le gestionnaire apk packgae pour mettre à jour le cache et installer Vim.
Vous devez créer cette image Docker personnalisée à partir du Dockerfile mentionné ci-dessus. Exécutez une commande comme celle-ci pour créer votre image Docker personnalisée :
docker build -t new_docker_image_name PATH_to_Dockerfile
Maintenant, si vous exécutez un conteneur avec cette nouvelle image Docker personnalisée, l'éditeur Vim devrait déjà être installé.
J'espère que ce petit conseil Docker vous a été utile.