docker常见故障分析

  • docker run故障
    • oci runtime故障
      • 报错原因分析:
      • 解决方法:
  • docker push故障
    • 复现方法:
    • 自建registry随后docker push localhost报错EOF
      • 报错原因分析:
      • 解决办法:

docker run故障

oci runtime故障

报错信息如下:

docker: Error response from daemon: oci runtime error: container_linux.go:303: starting container process caused "process_linux.go:364: container init caused \"rootfs_linux.go:57: mounting \\\"mqueue\\\" to rootfs \\\"/var/lib/docker/5000.5000/overlay2/6e0e6256a06b2c6d283a285737f67257fa35190b43286d951c496f3bc0652d83/merged\\\" at \\\"/dev/mqueue\\\" caused \\\"operation not permitted\\\"\"".

主要报错信息:
mounting \“mqueue\” to rootfs \"/var/lib/docker/5000.5000/overlay2/6e0e6256a06b2c6d283a285737f67257fa35190b43286d951c496f3bc0652d83/merged\" at \"/dev/mqueue\" caused \“operation not permitted\”

报错原因分析:

在daemon.json配置文件中,开启了userns-remap的同时,还开启了selinux。

解决方法:

关闭selinux或者关闭userns-remap。
关闭userns-remap会导致所有镜像和容器都不在了(因为开启了userns-remap以后,容器和镜像的文件保存在/var/lib/docker/uid.gid文件夹中,没有开启userns-remap的容器和镜像文件保存在/var/lib/docker文件夹中)。因此,推荐关闭selinux。
"selinux-enabled": false

进一步的处理方案待验证。

docker push故障

复现方法:

  1. 配置daemon.json配置文件
{"insecure-registries": ["[::1]:5000","172.17.0.1:5000","0.0.0.0/0","::/0"],"live-restore": true
}
  1. 拉取registry镜像
docker pull registry
  1. 给要推入仓库的镜像打标签。(这里以centos:latest镜像为例子)
docker tag centos:latest localhost:5000/centos
docker tag centos:latest 172.17.0.1:5000/centos
docker tag centos:latest 127.0.0.1:5000/centos
  1. 运行仓库容器
docker run -id --name registry-latest -p 5000:5000 -v /var/lib/docker/registry:/var/lib/registry registry:latest

-v 参数中,第一个/var/lib/registry表示主机侧的/var/lib/docker/registry目录。第二个/var/lib/registry表示容器的/var/lib/registry目录。
我们将镜像推送到registry容器中,registry容器默认会把推送来的镜像保存到容器中的/var/lib/registry目录下。
将主机侧的/var/lib/docker/registry目录挂载到容器内的/var/lib/registry目录上。

  1. 推送镜像
docker push localhost:5000/centos
docker push 172.17.0.1:5000/centos
docker push 127.0.0.1:5000/centos

自建registry随后docker push localhost报错EOF

docker push localhost报错。
而docker push 172.17.0.1:5000和127.0.0.1都没有报错。
报错信息如下:

[root@vm-62 ~]# docker push localhost:5000/centos
The push refers to a repository [localhost:5000/centos]
Put "http://localhost:5000/v1/repositories/centos/": EOF

报错原因分析:

docker 的localhost默认为0.0.0.0。可以通过docker ps查看registry容器可以看到。

[root@vm-62 ~]# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
19ae1c24f5be        registry:latest     "/entrypoint.sh /e..."   15 minutes ago      Up 15 minutes       0.0.0.0:5000->5000/tcp   registry-x86

是将主机侧的0.0.0.0:5000映射到了容器的5000。
所以localhost解析不出来。报错。

解决办法:

启动容器的时候指定映射ip为127.0.0.1。

docker run -id --name registry-latest -p 127.0.0.1:5000:5000 registry

然后再进行push localhost就不会报错了。(但是不能docker push 172了)

docker push localhost:5000/centos

docker常见故障分析相关推荐

  1. docker pull的镜像放在哪里_Docker 安装ELK及Docker常见命令

    最近搭建基于Spring Cloud的微服务框架,日志系统当然最佳选择就是ELK.看着MAC 那紧巴巴的配置,又不想热情退去而留下一堆软件,果断选择Docker安装来节省那可怜的资源.当然这只是鹏哥的 ...

  2. 低压抽屉柜常见故障处理方法_低压配电设备常见故障分析,处理办法介绍

    低压配电线路作为配电网络中主要的一部分,在其运行的过程中直接影响着人民的生命财产安全.配电线路是电力输送的终端,对于提高电力质量有着至关重要的作用.但由于配电线路走径的复杂性,人为因素和设备因素,都会 ...

  3. 心电信号越界怎么回事_心电监护仪常见故障分析与排除

    心电监护仪常见故障分析与排除 心电监护仪是一种连续实时的无创伤监测患者多种生理参数的监护仪器. 本文结合 EM-6 多 参数仪 ( 北京康宏兴业科技发展有限公司生产 ) 在临床使用巾经常出现的故障现象 ...

  4. 排除表_数字高压表(交直流分压器)常见故障分析

    国电西高为您提供数字高压表(交直流分压器)常见故障分析. 数字高压表是现场测量用的仪器仪表,既可测量直流高压,又可测量交流高压的,整个设备由分压器和测量仪表两部分组成.分压器采用平衡式等电位屏蔽结构, ...

  5. Docker常见使用

    Docker常见使用 1.Docker安装 ## 下载阿里源repo文件 $ curl -o /etc/yum.repos.d/Centos-7.repo http://mirrors.aliyun. ...

  6. Docker 常见使用

    目录 1. Docker 常见使用 1.1. docker 常用命令 1.2. 网络 / 网卡 1.2.1. 查看 docker 容器 IP 地址 1.2.2. 删除多余网卡 1.2.3. 删除 `d ...

  7. PC机主板常见故障分析和排除

    PC机主板常见故障分析和排除ze]2-B4   PC机主板常见故障分析和排除1u3Ua>A-   主板是整个PC机系统的关键部件,在PC机中起着至关重要的作用.CPU及总线控制逻辑.BIOS芯片 ...

  8. 常用计算机故障处理指令,计算机常见故障分析与维修.ppt

    计算机常见故障分析与维修 项目06 计算机常见故障分析与维修 终极目标:能独立判断.处理电脑出现的常见故障:能运用Windows PE系统维护计算机. 判断电脑出现的常见故障原因,并通过合适的方法解决 ...

  9. 三菱变频器常见故障分析与故障处理方法

    三菱变频器常见故障分析与故障处理方法,三菱变频器E6.E7故障问题,常见系列A700也被我们列在常范围故障之中.下面小编为你分享三菱变频器常见故障分析与故障处理方法. 1.UVT故障 UVT为欠压故障 ...

最新文章

  1. linux 内核 fork,《Linux内核分析》之分析fork函数对应的系统调用处理过程
  2. laravel mysql like_Laravel数据库查询中对 like 的值进行转义
  3. sql sum嵌套查询+ group by
  4. 非对称性密钥加密 java 实例_JAVA实现非对称加密
  5. GetGeneratedKeysHelper 与反射
  6. 计算机上播放时没声音什么故障,事实:在笔记本电脑上播放歌曲时如果没有声音怎么办...
  7. APP自动化测试系列之Appium介绍及运行原理
  8. OCP学习和培训ppt汇总
  9. asp.net数据库连接php代码,ASP.NET 数据库连接
  10. eclipse配置tomcat,访问http://localhost:8080出现404错误
  11. MATLAB矩阵合并
  12. 【23】数据可视化:基于 Echarts + Python 动态实时大屏范例 - Redis 数据源
  13. Bugku-网站被黑
  14. Spring cloud ribbon实现灰度发布
  15. java short转byte_java基础之short转换byte[]
  16. 双目标定(三)标定流程(含矫正)
  17. a1708硬盘转接口_macbook pro2017 a1708转接卡更换大容量硬盘,Apple/苹果笔记本电脑_好文分享_优购 - 荐优,购适...
  18. Viterbi-Algorithm(维特比算法)
  19. BK芯片,Wi-Fi6-数传ble-BK7256 BK7235 BK7258 BK7231 BK3633 BK3432 BK3437 BL2028
  20. iphone6 因为充电线电压不稳,产生的错乱现象

热门文章

  1. mad离群值_全部关于离群值
  2. java中怎么计算一个方法执行时,耗费多少毫秒
  3. csp-j2022比赛心得
  4. 配电系统中的瞬时故障
  5. 怎样批量查询网站是否被搜狗收录?批量查询网站搜狗收录的详细教程
  6. 离散数学·命题逻辑【范式、推理】
  7. Oracle取排序的第五条数据,OVER(PARTITION BY)函数介绍 【oracle中按A分组按B排序,再取B中第一条数据的查询】...
  8. 【论文阅读】Efficient Illuminant Estimation for Color Constancy Using Grey Pixels
  9. python股票自动 选股 与 止损 止盈 脚本
  10. linux zip压缩报错,Linux之zip压缩