最近接触docker,在pull完alpine linux镜像后,使用docker run -it -d alpine:3.2 -n alpine时遇到如下报错:
[root@localhost alpine]# docker run -it -d alpine:3.2 -n alpine
ab12cf85c171d701c5900202997c0405cb68f490fd4c1e40e0d76999ef47fb45
/usr/bin/docker-current: Error response from daemon: invalid header field value "oci runtime error: container_linux.go:247: starting container process caused \"exec: \\\"-n\\\": executable file not found in $PATH\"\n".
[root@localhost alpine]#
[root@localhost ~]# docker run -it -d alpine alpine:3.2
971a586a3359d0516bd424bbc2479f66252c08c50e29f2671c6908b5f4a5c03a
/usr/bin/docker-current: Error response from daemon: invalid header field value "oci runtime error: container_linux.go:247: starting container process caused \"exec: \\\"alpine:3.2\\\": executable file not found in $PATH\"\n".
[root@localhost ~]#
[root@localhost ~]# docker run -it alpine:3.2 /bin/bash
/usr/bin/docker-current: Error response from daemon: invalid header field value "oci runtime error: container_linux.go:247: starting container process caused \"exec: \\\"/bin/bash\\\": stat /bin/bash: no such file or directory\"\n".
[root@localhost ~]#
发现使用/bin/sh能正常启动alpine linux容器:
[root@localhost ~]# docker run -it -d --name alpine alpine:3.2 /bin/sh
ff84625fcba7db45beb1f8e23382212ad3596dad9edfa734e3612afbcec3437b
[root@localhost ~]#
[root@localhost ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ff84625fcba7 alpine:3.2 "/bin/sh" 22 minutes ago Up 22 minutes alpine
bbf4f320d745 postgres:9.6 "docker-entrypoint.sh" 39 hours ago Up 39 hours 0.0.0.0:5432->5432/tcp sleepy_shaw
54ac163fd19d csphere/centjdk:7.25 "/usr/bin/supervisord" 4 days ago Up 4 days 22/tcp centos_jdk
17a16cc2e6cc csphere/centos:7.1 "/usr/bin/supervisord" 2 weeks ago Up 2 weeks 22/tcp centos7
[root@localhost ~]#
[root@localhost ~]# docker exec -it alpine /bin/sh
/ # uname -a
Linux ff84625fcba7 3.10.0-514.el7.x86_64 #1 SMP Tue Nov 22 16:42:41 UTC 2016 x86_64 Linux
/ # hostname
ff84625fcba7
/ # du -sh
5.6M .
/ #