centos7安裝docker

整理記錄在centos7安裝docker時遇到的坑

我的安裝步驟:

“Failed to get D-Bus connection: Operation not permitted”

這個問題比較簡單,網上查一查發現一是因爲systemctl需要特定的權限,在運行新的容器時增加 “--privileged=true” 參數,參考: https://blog.51cto.com/lizhenliang/1975466

  • 再次重複了以上的安裝步驟後,再一次美滋滋地執行“systemctl start docker”,依然報同樣的錯。。。繼續google,參考:https://yhz61010.iteye.com/blog/2352597,systemctl終於可以用了,但是有別的錯,不要煩躁。。。

[root@9455e87ab6d3 /]# systemctl status docker.service
● docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled)
   Active: failed (Result: start-limit) since Mon 2019-07-01 19:28:58 CST; 1s ago
     Docs: https://docs.docker.com
  Process: 443 ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock (code=exited, status=1/FAILURE)
 Main PID: 443 (code=exited, status=1/FAILURE)

Jul 01 19:28:56 9455e87ab6d3 systemd[1]: Failed to start Docker Application Container Engine.
Jul 01 19:28:56 9455e87ab6d3 systemd[1]: Unit docker.service entered failed state.
Jul 01 19:28:56 9455e87ab6d3 systemd[1]: docker.service failed.
Jul 01 19:28:58 9455e87ab6d3 systemd[1]: docker.service holdoff time over, scheduling restart.
Jul 01 19:28:58 9455e87ab6d3 systemd[1]: Stopped Docker Application Container Engine.
Jul 01 19:28:58 9455e87ab6d3 systemd[1]: start request repeated too quickly for docker.service
Jul 01 19:28:58 9455e87ab6d3 systemd[1]: Failed to start Docker Application Container Engine.
Jul 01 19:28:58 9455e87ab6d3 systemd[1]: Unit docker.service entered failed state.
Jul 01 19:28:58 9455e87ab6d3 systemd[1]: docker.service failed.

似乎沒能明顯的看出來是什麼問題,糾結了老半天,我把“/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock”摳出來單獨執行了,結果:

Failed to load listeners: no sockets found via socket activation: make sure the service was started by systemd

看樣子是要在systemctl裏來執行的,後來發現“/run/containerd/containerd.sock”是個空文件,於是找到docker.socket文件,修改docker.service:

再執行“systemctl start docker”,這時報錯信息變了:

[root@989f9e9bc417 /]# systemctl status docker.service
● docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled)
   Active: activating (auto-restart) (Result: exit-code) since Wed 2019-07-03 15:31:28 CST; 301ms ago
     Docs: https://docs.docker.com
  Process: 1443 ExecStart=/usr/bin/dockerd -H fd:// --containerd=/usr/lib/systemd/system/docker.socket (code=exited, status=1/FAILURE)
 Main PID: 1443 (code=exited, status=1/FAILURE)

Jul 03 15:31:29 989f9e9bc417 dockerd[1443]: time="2019-07-03T15:31:28.971866900+08:00" level=error msg="[graphdriver] prior storage driver devicemapper failed: exec: \"mkfs.ext4\": exec...und in $PATH"
Jul 03 15:31:29 989f9e9bc417 dockerd[1443]: time="2019-07-03T15:31:28.971891500+08:00" level=error msg="failed to get event" error="rpc error: code = Unavailable desc = all SubConns are in Transient...
Jul 03 15:31:29 989f9e9bc417 dockerd[1443]: time="2019-07-03T15:31:28.971992000+08:00" level=error msg="failed to get event" error="rpc error: code = Unavailable desc = all SubConns are in Transient...
Jul 03 15:31:29 989f9e9bc417 dockerd[1443]: time="2019-07-03T15:31:28.972096100+08:00" level=error msg="failed to get event" error="rpc error: code = Unavailable desc = all SubConns are in Transient...
Jul 03 15:31:29 989f9e9bc417 dockerd[1443]: time="2019-07-03T15:31:28.972143600+08:00" level=error msg="failed to get event" error="rpc error: code = Unavailable desc = all SubConns are in Transient...
Jul 03 15:31:29 989f9e9bc417 dockerd[1443]: time="2019-07-03T15:31:28.972184000+08:00" level=error msg="failed to get event" error="rpc error: code = Unavailable desc = all SubConns are in Transient...
Jul 03 15:31:29 989f9e9bc417 dockerd[1443]: time="2019-07-03T15:31:28.972223900+08:00" level=error msg="failed to get event" error="rpc error: code = Unavailable desc = all SubConns are in Transient...
Jul 03 15:31:29 989f9e9bc417 dockerd[1443]: time="2019-07-03T15:31:28.972267700+08:00" level=error msg="failed to get event" error="rpc error: code = Unavailable desc = all SubConns are in Transient...
Jul 03 15:31:29 989f9e9bc417 dockerd[1443]: Error starting daemon: error initializing graphdriver: exec: "mkfs.ext4": executable file not found in $PATH
Jul 03 15:31:29 989f9e9bc417 dockerd[1443]: time="2019-07-03T15:31:28.972307200+08:00" level=error msg="failed to get event" error="rpc error: code = Unavailable desc = all SubConns are in Transient...
Hint: Some lines were ellipsized, use -l to show in full.

宿主機重啓一下再執行,報錯信息裏有這麼一條:

Error starting daemon: error initializing graphdriver: exec: "mkfs.ext4": executable file not found in $PATH

缺少mkfs.ext4命令,安裝一個,執行

yum install -y e4fsprogs

可以啓動了,美滋滋


可能遇到的其它問題:

  • 問題1

Jul 03 18:14:34 4c6ad43edf4a dockerd[1463]: time="2019-07-03T18:14:34.440215500+08:00" level=error msg="failed to get event" error="rpc error: code = Unavailable desc = all SubConns are in TransientFailure, latest connection error: connection err
Jul 03 18:14:34 4c6ad43edf4a dockerd[1463]: time="2019-07-03T18:14:34.440281600+08:00" level=error msg="failed to get event" error="rpc error: code = Unavailable desc = all SubConns are in TransientFailure, latest connection error: connection err
Jul 03 18:14:34 4c6ad43edf4a dockerd[1463]: time="2019-07-03T18:14:34.440613100+08:00" level=error msg="[graphdriver] prior storage driver devicemapper failed: loopback attach failed"
Jul 03 18:14:34 4c6ad43edf4a dockerd[1463]: Error starting daemon: error initializing graphdriver: loopback attach failed
Jul 03 18:14:36 4c6ad43edf4a systemd[1]: docker.service holdoff time over, scheduling restart.
Jul 03 18:14:36 4c6ad43edf4a systemd[1]: Stopped Docker Application Container Engine.

還沒找到解決辦法,改用ubuntu 了。。。。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章