安装踩坑记录.md 2.6 KB

docker安装踩坑

根据官网安装docker

1. 移除可能安装的旧版本docker相关程序

2. 添加docker仓库

centerOS上安装实战

一次具体的问题排查记录

排查启动失败原因

  1. 查看服务状态

    sudo systemctl status docker 
    
  2. 发现关键字Unit docker.service entered failed state.

  3. 搜索得到提示,与防火墙有冲突

  4. 找到对应的解决方案 , 参考该文章的第三条,修改docker的配置文件/etc/docker/daemon.json

    sudo vim /etc/docker/daemon.json
    
  5. 输入如下内容

    {
    "iptables": false
    }
    
  6. 启动发现还是有问题,继续排查

  7. 还原配置文件

  8. 使用dockerd来启动docker服务

  9. 命令

    sudo dockerd
    
  10. 发现错误提示 Failed to built-in GetDriver graph btrfs /var/lib/docker

  11. 找到对应解决方案

  12. 查找系统文件系统类型

    sudo parted -l
    
  13. 发现文件类型和该解决方案的文件类型一致vfs

  14. 修改docker配置文件/etc/docker/daemon.json

    {
    "storage-driver": "vfs"
    }
    
  15. 继续尝试启动,出现新问题 Failed to program NAT chain: INVALID_ZONE: docker failed to start daemon: Error initializing network controller: Error creating default "bridge" network: Failed to program NAT chain: INVALID_ZONE: docker

  16. network看起来是网络相关的错误,想到之前找到的防火墙冲突解决方案,尝试修改docker配置文件

  17. 添加"iptables": false

    "iptables": false
    
  18. 最终修改后的配置文件

    {
    "storage-driver": "vfs",
    "iptables": false
    }
    
  19. 尝试启动docker服务

    sudo systemctl start docker
    
  20. 没有让看日志,直接查看服务状态(可能启动成功了)

    sudo systemctl status docker
    
  21. 服务成功处于运行中,开始尝试使用docker命令

    sudo docker ps -a
    
  22. 测试docker命令 查看docker是否能够正常启动

  23. 查看docker版本

    sudo docker version
    
  24. 发现异常Cannot connect to the Docker daemon at unix Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

  25. 服务已经启动,但是docker命令无法连接到docker服务

  26. 尝试重启docker服务,

    sudo systemctl restart docker
    

    通过tab补全命令发现还有一个docker.socket服务,顺便也重启一下

    sudo systemctl restart docker.socket
    
  27. 重启后再次查看docker版本

    sudo docker version
    
  28. 没有异常输出,测试使用镜像