Dockerfile 在Ubuntu20.04构建镜像,ERROR: failed to solve: process “.. ...

打印 上一主题 下一主题

主题 651|帖子 651|积分 1953

完整报错:ERROR: failed to solve: process "/bin/bash -c apt-get update && apt-get upgrade -y && apt-get install -y net-tools iputils-ping dnsutils libssl-dev ros-${ROS_DISTRO}-desktop ros-${ROS_DISTRO}-rmw-cyclonedds-cpp --no-install-recommends && rm -rf /var/lib/apt/lists/*" did not complete successfully: exit code: 100。
重复build了好几次,都是报这个错误,思量镜像源问题,估计是apt-get这个命令的问题。
修改方式:在dockerfile文件中,思量在运行apt-get命令之前,插入以下命令:

  1. RUN sed -i 's@http://archive.ubuntu.com/@http://mirrors.tuna.tsinghua.edu.cn/@g' /etc/apt/sources.list \
  2.     && sed -i 's@http://security.ubuntu.com/@http://mirrors.tuna.tsinghua.edu.cn/@g' /etc/apt/sources.list
  3.     && sed -i 's#http://ports.ubuntu.com/ubuntu-ports/#http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/#g' /etc/apt/sources.list
复制代码
此外还遇到了另外一种环境 :

就是上面的修改完毕后,扫除缓存再运行,发现换源这里的执行时间为0.0s。
感觉镜像源可能没有写入/etc/apt/sources.list,于是我在dockerfile里面增加了这一行:
  1. RUN cat /etc/apt/sources.list
复制代码
然后运行dockerbuild,加上--progress=plain为了输出更细致一点
  1. docker build --rm --progress=plain --no-cache -f $BUILD_CONTEXTS -t $DOCKERHUB_USERNAME/ros:rolling-$ARCH .
复制代码
之后,输出如下 :

 从输出中可以看到 /etc/apt/sources.list 文件的内容,此中提到了 Ubuntu sources 已经移动到了 /etc/apt/sources.list.d/ubuntu.sources 文件。
修改方式2:就是把后面的文件地址改了
  1. RUN sed -i 's@http://archive.ubuntu.com/@http://mirrors.tuna.tsinghua.edu.cn/@g' /etc/apt/sources.list.d/ubuntu.sources \
  2.     && sed -i 's@http://security.ubuntu.com/@http://mirrors.tuna.tsinghua.edu.cn/@g' /etc/apt/sources.list.d/ubuntu.sources\
  3.     && sed -i 's#http://ports.ubuntu.com/ubuntu-ports/#http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/#g' /etc/apt/sources.list.d/ubuntu.sources
复制代码
(不管上面什么环境)最后运行过程如下:

1. 扫除缓存
  1. docker builder prune
复制代码
2. 运行docker build即可(博主自己构建了一个循环build的脚本文件,其实大差不差)
最后结果如下:镜像构建成功! 


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

小秦哥

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表