web-dev-qa-db-fra.com

comment ssh docker container

J'exécute le conteneur hypriot/rpi-busybox-httpd

J'essaye de ssh au docker container: mais cela donne une erreur:

pi@raspberrypi:~ $ docker exec -it cc55da85b915 bash
rpc error: code = 2 desc = oci runtime error: exec failed: container_linux.go:247: starting container process caused "exec: \"bash\": executable file not found in $PATH"

pi@raspberrypi:~ $ docker exec -it cc55da85b915 sh
rpc error: code = 2 desc = oci runtime error: exec failed: container_linux.go:247: starting container process caused "exec: \"sh\": executable file not found in $PATH"

est-ce que je fais tout de suite?

23
Ciasto piekarz

Il se peut que votre image n'ait pas le binaire/bin/bash installé (comme suggéré précédemment), j'ai eu le même problème et j'ai pu entrer dans le conteneur en utilisant/bin/sh

docker exec -ti cc55da85b915 /bin/sh

Une autre solution de contournement pourrait être d'exécuter directement les commandes sans avoir accès à un shell.

docker exec -ti cc55da85b915 ls /etc
58
Esteban Collado

L'image que vous utilisez semble ne pas avoir le binaire / bin/bash installé mais elle devrait avoir / bin/sh

Essayer:

docker exec -it cc55da85b915 sh
4
Alaeddine

Vous pouvez le faire de différentes manières, vous pouvez attacher en utilisant la commande attacher de docker.

$ Sudo docker attach cc55da85b915 #by ID

Ou vous pouvez utiliser la commande docker exec:

$ Sudo docker exec -i -t cc55da85b915 /bin/bash

Si /bin/bash échoue, vous pouvez utiliser /bin/sh qui fonctionne dans plus de conteneurs:

$ Sudo docker exec -i -t cc55da85b915 /bin/sh
1
Asier Gomez

Vous devrez peut-être spécifier le chemin complet vers bash, par exemple:

docker exec -it cc55da85b915 /bin/bash

ou /usr/local/bin/bash, ou partout où bash se trouve dans cette image.

J'espère que cela t'aides!

1
Castaglia

Pour l'image basée sur Alpine, le docker exec -ti cc55da85b915/bin/sh et le docker exec -ti cc55da85b915 ls/etc ont fonctionné. Comme suggéré par "Esteban Collado".

Cependant, pour les autres versions de Linux que j'utilise, docker exec -ti cc55da85b915 bash

0
super-coder