Docker常見報錯解決方法記錄

 

【問題一】OCI runtime exec failed......executable file not found in $PATH": unknown

[root@localhost home]# docker exec -it container-test bash
OCI runtime exec failed: exec failed: container_linux.go:346: starting container process caused "exec: \"bash\": executable file not found in $PATH": unknown

【分析】java

  因爲鏡像系統不一,使用錯誤shell解釋器致使,可嘗試如下其中一種方案。linux

【解決】docker

docker exec -it container-test /bin/bash

docker exec -it container-test /bin/sh

docker exec -it container-test /bin/csh

 

 

【問題二】http: server gave HTTP response to HTTPS client

$ docker push xxx.xxx.xxx.xxx:5000/java-8
The push refers to repository [xxx.xxx.xxx.xxx/java-8]
Get https://xxx.xxx.xxx.xxx:5000/v2/: http: server gave HTTP response to HTTPS client

【分析】shell

  Docker自從1.3.X以後docker registry交互默認使用的是HTTPS,可是搭建私有鏡像默認使用的是HTTP服務致使。json

【解決】vim

# 修改啓動文件第12行
# vim /usr/lib/systemd/system/docker.service
# ExecStart=/usr/bin/dockerd --insecure-registry xxx.xxx.xxx.xxx:5000

# 或者增長deamon.json文件配置
$ vim /etc/docker/daemon.json { "insecure-registries":["xxx.xxx.xxx.xxx:5000"] }
# 最後重啓服務
$ systemctl daemon-reload $ systemctl restart docker

 

 

【問題三】getsockopt: connection refused

【分析】bash

  沒有指定鏡像要上傳的具體地址致使。spa

【解決】unix

docker tag <image> <ip:port/image>
docker push ip:port/image 

 

【問題四】Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

【分析】rest

  異常卸載關閉致使。

【解決】

$ systemctl daemon-reload
$ sudo service docker restart
$ sudo service docker status (should see active (running))
相關文章
相關標籤/搜索