1

When I am login docker kubernetes dashboard using this command:

docker exec -it ecd3ff5051df /bin/bash 

Throw this error:

OCI runtime exec failed: exec failed: container_linux.go:345: starting container process caused "exec: \"/bin/bash\": stat /bin/bash: no such file or directory": unknown 

I am searching the internet and tell me the alpline default using sh, then I am trying to login like this:

docker exec -it ecd3ff5051df /bin/sh 

throw this error:

OCI runtime exec failed: exec failed: container_linux.go:345: starting container process caused "exec: \"/bin/sh\": stat /bin/sh: no such file or directory": unknown 

where is the problem? Thank you.this is my docker info:

[root@log001 ~]# docker inspect 47c0c3b512cb [ { "Id": "47c0c3b512cbc15e7db1753d1d255346532e5f94b5b013da70074cffd6ea70ff", "Created": "2019-09-22T10:40:59.197328264Z", "Path": "/dashboard", "Args": [ "--insecure-bind-address=0.0.0.0", "--bind-address=0.0.0.0", "--auto-generate-certificates" ], "State": { "Status": "running", "Running": true, "Paused": false, "Restarting": false, "OOMKilled": false, "Dead": false, "Pid": 22632, "ExitCode": 0, "Error": "", "StartedAt": "2019-09-22T10:40:59.680933289Z", "FinishedAt": "0001-01-01T00:00:00Z" }, "Image": "sha256:f9aed6605b814b69e92dece6a50ed1e4e730144eb1cc971389dde9cb3820d124", "ResolvConfPath": "/var/lib/docker/containers/ecd3ff5051df0ed2a8b8bc5e2145dfcbf630d834cdb35572230d1a5cb4d60852/resolv.conf", "HostnamePath": "/var/lib/docker/containers/ecd3ff5051df0ed2a8b8bc5e2145dfcbf630d834cdb35572230d1a5cb4d60852/hostname", "HostsPath": "/opt/k8s/k8s/kubelet/pods/9b8ba20d-f379-4b83-8d85-5901f26308c7/etc-hosts", "LogPath": "/var/lib/docker/containers/47c0c3b512cbc15e7db1753d1d255346532e5f94b5b013da70074cffd6ea70ff/47c0c3b512cbc15e7db1753d1d255346532e5f94b5b013da70074cffd6ea70ff-json.log", "Name": "/k8s_kubernetes-dashboard_kubernetes-dashboard-74d7cc788-mk9c7_kube-system_9b8ba20d-f379-4b83-8d85-5901f26308c7_2", "RestartCount": 0, "Driver": "overlay2", "Platform": "linux", "MountLabel": "", "ProcessLabel": "", "AppArmorProfile": "", "ExecIDs": null, "HostConfig": { "Binds": [ "/opt/k8s/k8s/kubelet/pods/9b8ba20d-f379-4b83-8d85-5901f26308c7/volumes/kubernetes.io~secret/kubernetes-dashboard-certs:/certs:ro", "/opt/k8s/k8s/kubelet/pods/9b8ba20d-f379-4b83-8d85-5901f26308c7/volumes/kubernetes.io~empty-dir/tmp-volume:/tmp", "/opt/k8s/k8s/kubelet/pods/9b8ba20d-f379-4b83-8d85-5901f26308c7/volumes/kubernetes.io~secret/kubernetes-dashboard-token-pmxpf:/var/run/secrets/kubernetes.io/serviceaccount:ro", "/opt/k8s/k8s/kubelet/pods/9b8ba20d-f379-4b83-8d85-5901f26308c7/etc-hosts:/etc/hosts", "/opt/k8s/k8s/kubelet/pods/9b8ba20d-f379-4b83-8d85-5901f26308c7/containers/kubernetes-dashboard/50339ad7:/dev/termination-log" ], "ContainerIDFile": "", "LogConfig": { "Type": "json-file", "Config": {} }, "NetworkMode": "container:ecd3ff5051df0ed2a8b8bc5e2145dfcbf630d834cdb35572230d1a5cb4d60852", "PortBindings": null, "RestartPolicy": { "Name": "no", "MaximumRetryCount": 0 }, "AutoRemove": false, "VolumeDriver": "", "VolumesFrom": null, "CapAdd": null, "CapDrop": null, "Dns": null, "DnsOptions": null, "DnsSearch": null, "ExtraHosts": null, "GroupAdd": null, "IpcMode": "container:ecd3ff5051df0ed2a8b8bc5e2145dfcbf630d834cdb35572230d1a5cb4d60852", "Cgroup": "", "Links": null, "OomScoreAdj": -998, "PidMode": "", "Privileged": false, "PublishAllPorts": false, "ReadonlyRootfs": false, "SecurityOpt": null, "UTSMode": "", "UsernsMode": "", "ShmSize": 67108864, "Runtime": "runc", "ConsoleSize": [ 0, 0 ], "Isolation": "", "CpuShares": 51, "Memory": 314572800, "NanoCpus": 0, "CgroupParent": "/kubepods/burstable/pod9b8ba20d-f379-4b83-8d85-5901f26308c7", "BlkioWeight": 0, "BlkioWeightDevice": null, "BlkioDeviceReadBps": null, "BlkioDeviceWriteBps": null, "BlkioDeviceReadIOps": null, "BlkioDeviceWriteIOps": null, "CpuPeriod": 100000, "CpuQuota": 10000, "CpuRealtimePeriod": 0, "CpuRealtimeRuntime": 0, "CpusetCpus": "", "CpusetMems": "", "Devices": [], "DeviceCgroupRules": null, "DiskQuota": 0, "KernelMemory": 0, "MemoryReservation": 0, "MemorySwap": 314572800, "MemorySwappiness": null, "OomKillDisable": false, "PidsLimit": 0, "Ulimits": null, "CpuCount": 0, "CpuPercent": 0, "IOMaximumIOps": 0, "IOMaximumBandwidth": 0, "MaskedPaths": [ "/proc/acpi", "/proc/kcore", "/proc/keys", "/proc/latency_stats", "/proc/timer_list", "/proc/timer_stats", "/proc/sched_debug", "/proc/scsi", "/sys/firmware" ], "ReadonlyPaths": [ "/proc/asound", "/proc/bus", "/proc/fs", "/proc/irq", "/proc/sys", "/proc/sysrq-trigger" ] }, "GraphDriver": { "Data": { "LowerDir": "/var/lib/docker/overlay2/9f0d685998ea4b8fce36e79ddb90f33b115d4d12468845a08472d350f29d8c52-init/diff:/var/lib/docker/overlay2/32329fe5a56eea9514b732989f53864544c8bf24c97fb53ace9cbc82784e67d2/diff", "MergedDir": "/var/lib/docker/overlay2/9f0d685998ea4b8fce36e79ddb90f33b115d4d12468845a08472d350f29d8c52/merged", "UpperDir": "/var/lib/docker/overlay2/9f0d685998ea4b8fce36e79ddb90f33b115d4d12468845a08472d350f29d8c52/diff", "WorkDir": "/var/lib/docker/overlay2/9f0d685998ea4b8fce36e79ddb90f33b115d4d12468845a08472d350f29d8c52/work" }, "Name": "overlay2" }, "Mounts": [ { "Type": "bind", "Source": "/opt/k8s/k8s/kubelet/pods/9b8ba20d-f379-4b83-8d85-5901f26308c7/volumes/kubernetes.io~empty-dir/tmp-volume", "Destination": "/tmp", "Mode": "", "RW": true, "Propagation": "rprivate" }, { "Type": "bind", "Source": "/opt/k8s/k8s/kubelet/pods/9b8ba20d-f379-4b83-8d85-5901f26308c7/volumes/kubernetes.io~secret/kubernetes-dashboard-token-pmxpf", "Destination": "/var/run/secrets/kubernetes.io/serviceaccount", "Mode": "ro", "RW": false, "Propagation": "rprivate" }, { "Type": "bind", "Source": "/opt/k8s/k8s/kubelet/pods/9b8ba20d-f379-4b83-8d85-5901f26308c7/etc-hosts", "Destination": "/etc/hosts", "Mode": "", "RW": true, "Propagation": "rprivate" }, { "Type": "bind", "Source": "/opt/k8s/k8s/kubelet/pods/9b8ba20d-f379-4b83-8d85-5901f26308c7/containers/kubernetes-dashboard/50339ad7", "Destination": "/dev/termination-log", "Mode": "", "RW": true, "Propagation": "rprivate" }, { "Type": "bind", "Source": "/opt/k8s/k8s/kubelet/pods/9b8ba20d-f379-4b83-8d85-5901f26308c7/volumes/kubernetes.io~secret/kubernetes-dashboard-certs", "Destination": "/certs", "Mode": "ro", "RW": false, "Propagation": "rprivate" } ], "Config": { "Hostname": "kubernetes-dashboard-74d7cc788-mk9c7", "Domainname": "", "User": "0", "AttachStdin": false, "AttachStdout": false, "AttachStderr": false, "ExposedPorts": { "8443/tcp": {}, "9090/tcp": {} }, "Tty": false, "OpenStdin": false, "StdinOnce": false, "Env": [ "KUBERNETES_PORT=tcp://10.254.0.1:443", "KUBE_DNS_SERVICE_PORT_DNS_TCP=53", "KUBE_DNS_PORT_53_UDP_PORT=53", "KUBERNETES_DASHBOARD_PORT_443_TCP_PROTO=tcp", "KUBE_DNS_SERVICE_PORT_DNS=53", "KUBE_DNS_SERVICE_PORT_METRICS=9153", "KUBE_DNS_PORT_53_UDP=udp://10.254.0.2:53", "KUBE_DNS_PORT_53_UDP_ADDR=10.254.0.2", "KUBERNETES_SERVICE_PORT_HTTPS=443", "KUBERNETES_PORT_443_TCP_PORT=443", "KUBERNETES_DASHBOARD_SERVICE_PORT=443", "KUBERNETES_DASHBOARD_PORT=tcp://10.254.75.193:443", "KUBERNETES_DASHBOARD_PORT_443_TCP=tcp://10.254.75.193:443", "KUBE_DNS_SERVICE_HOST=10.254.0.2", "KUBE_DNS_PORT_53_TCP_PORT=53", "KUBE_DNS_PORT_9153_TCP=tcp://10.254.0.2:9153", "KUBERNETES_PORT_443_TCP=tcp://10.254.0.1:443", "KUBERNETES_PORT_443_TCP_ADDR=10.254.0.1", "KUBERNETES_DASHBOARD_SERVICE_HOST=10.254.75.193", "KUBE_DNS_PORT_9153_TCP_ADDR=10.254.0.2", "KUBERNETES_DASHBOARD_PORT_443_TCP_ADDR=10.254.75.193", "KUBE_DNS_SERVICE_PORT=53", "KUBE_DNS_PORT_9153_TCP_PORT=9153", "KUBE_DNS_PORT_53_UDP_PROTO=udp", "KUBE_DNS_PORT_53_TCP_PROTO=tcp", "KUBE_DNS_PORT_53_TCP=tcp://10.254.0.2:53", "KUBERNETES_SERVICE_PORT=443", "KUBERNETES_PORT_443_TCP_PROTO=tcp", "KUBE_DNS_PORT=udp://10.254.0.2:53", "KUBERNETES_SERVICE_HOST=10.254.0.1", "KUBE_DNS_PORT_9153_TCP_PROTO=tcp", "KUBERNETES_DASHBOARD_PORT_443_TCP_PORT=443", "KUBE_DNS_PORT_53_TCP_ADDR=10.254.0.2", "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" ], "Cmd": [ "--auto-generate-certificates" ], "Healthcheck": { "Test": [ "NONE" ] }, "Image": "sha256:f9aed6605b814b69e92dece6a50ed1e4e730144eb1cc971389dde9cb3820d124", "Volumes": null, "WorkingDir": "", "Entrypoint": [ "/dashboard", "--insecure-bind-address=0.0.0.0", "--bind-address=0.0.0.0" ], "OnBuild": null, "Labels": { "annotation.io.kubernetes.container.hash": "b11195e", "annotation.io.kubernetes.container.ports": "[{\"containerPort\":8443,\"protocol\":\"TCP\"}]", "annotation.io.kubernetes.container.restartCount": "2", "annotation.io.kubernetes.container.terminationMessagePath": "/dev/termination-log", "annotation.io.kubernetes.container.terminationMessagePolicy": "File", "annotation.io.kubernetes.pod.terminationGracePeriod": "30", "io.kubernetes.container.logpath": "/var/log/pods/kube-system_kubernetes-dashboard-74d7cc788-mk9c7_9b8ba20d-f379-4b83-8d85-5901f26308c7/kubernetes-dashboard/2.log", "io.kubernetes.container.name": "kubernetes-dashboard", "io.kubernetes.docker.type": "container", "io.kubernetes.pod.name": "kubernetes-dashboard-74d7cc788-mk9c7", "io.kubernetes.pod.namespace": "kube-system", "io.kubernetes.pod.uid": "9b8ba20d-f379-4b83-8d85-5901f26308c7", "io.kubernetes.sandbox.id": "ecd3ff5051df0ed2a8b8bc5e2145dfcbf630d834cdb35572230d1a5cb4d60852", "maintainer": "Piotr Bryk <[email protected]>" } }, "NetworkSettings": { "Bridge": "", "SandboxID": "", "HairpinMode": false, "LinkLocalIPv6Address": "", "LinkLocalIPv6PrefixLen": 0, "Ports": {}, "SandboxKey": "", "SecondaryIPAddresses": null, "SecondaryIPv6Addresses": null, "EndpointID": "", "Gateway": "", "GlobalIPv6Address": "", "GlobalIPv6PrefixLen": 0, "IPAddress": "", "IPPrefixLen": 0, "IPv6Gateway": "", "MacAddress": "", "Networks": {} } } ] 
0

1 Answer 1

4

You can’t docker exec or kubectl exec into this container at all, because it doesn’t have any interactive tools you could run.

There’s no requirement that a Docker image contain a shell or any other debugging tools, and particularly in the case of Go-based binaries it’s not that uncommon to have an extremely minimal image that only contains the application and absolutely nothing else.

If you look at the dashboard Dockerfile you’ll see that it’s structured as

FROM scratch ADD . / 

There’s absolutely nothing at all in the scratch base image — no shell, no libraries, nothing. So the only things in the official dashboard image are the things that come out of the Kubernetes source tree; there isn’t a /bin/sh or /bin/bash (or even a /bin directory).

Sign up to request clarification or add additional context in comments.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.