Docker构建与Docker运行表现不一样

如何解决Docker构建与Docker运行表现不一样

我尝试以Archlinux为基础构建Docker映像。 问题是在构建docker映像和手动执行命令时,我没有相同的结果。

$ cat Dockerfile
FROM archlinux/base

RUN pacman -Suy --noconfirm --noprogressbar

$ docker build .
#1 [internal] load .dockerignore
#1 transferring context: 2B done
#1 DONE 0.3s

#2 [internal] load build definition from Dockerfile
#2 transferring dockerfile: 37B done
#2 DONE 0.2s

#3 [internal] load metadata for docker.io/archlinux/base:latest
#3 DONE 0.0s

#4 [1/2] FROM docker.io/archlinux/base
#4 CACHED

#5 [2/2] RUN pacman -Suy --noconfirm --noprogressbar
#5 0.692 :: Synchronizing package databases...
#5 1.449 downloading core.db...
#5 3.139 downloading extra.db...
#5 8.344 downloading community.db...
#5 15.38 :: Starting full system upgrade...
#5 15.40 resolving dependencies...
#5 15.55 looking for conflicting packages...
#5 15.56 
#5 15.56 Packages (26) archlinux-keyring-20200820-1  bash-5.0.018-1  ca-certificates-mozilla-3.56-1  curl-7.72.0-2  file-5.39-1  filesystem-2020.08.21-1  gcc-libs-10.2.0-1  glib2-2.64.5-1  glibc-2.32-3  hwids-20200813.1-1  iana-etc-20200812-1  kbd-2.3.0-2  libcap-2.42-1  libgpg-error-1.39-1  libp11-kit-0.23.21-1  libutil-linux-2.36-2  libxcrypt-4.4.17-1  linux-api-headers-5.7-1  p11-kit-0.23.21-1  pacman-mirrorlist-20200801-1  pam-1.4.0-3  pambase-20200721.1-2  sqlite-3.33.0-2  systemd-246.3-1  systemd-libs-246.3-1  util-linux-2.36-2
#5 15.56 
#5 15.56 Total Download Size:    63.83 MiB
#5 15.56 Total Installed Size:  297.78 MiB
#5 15.56 Net Upgrade Size:        7.41 MiB
#5 15.56 
#5 15.56 :: Proceed with installation? [Y/n] 
#5 15.56 :: Retrieving packages...
#5 15.94 downloading archlinux-keyring-20200820-1-any.pkg.tar.zst...
#5 18.60 downloading linux-api-headers-5.7-1-any.pkg.tar.zst...
#5 21.09 downloading iana-etc-20200812-1-any.pkg.tar.zst...
#5 23.08 downloading filesystem-2020.08.21-1-x86_64.pkg.tar.zst...
#5 23.73 downloading glibc-2.32-3-x86_64.pkg.tar.zst...
#5 30.46 downloading gcc-libs-10.2.0-1-x86_64.pkg.tar.zst...
#5 38.65 downloading bash-5.0.018-1-x86_64.pkg.tar.zst...
#5 42.37 downloading libp11-kit-0.23.21-1-x86_64.pkg.tar.zst...
#5 44.24 downloading libcap-2.42-1-x86_64.pkg.tar.zst...
#5 44.99 downloading libgpg-error-1.39-1-x86_64.pkg.tar.zst...
#5 46.48 downloading systemd-libs-246.3-1-x86_64.pkg.tar.zst...
#5 48.72 downloading p11-kit-0.23.21-1-x86_64.pkg.tar.zst...
#5 50.07 downloading ca-certificates-mozilla-3.56-1-x86_64.pkg.tar.zst...
#5 52.28 downloading libutil-linux-2.36-2-x86_64.pkg.tar.zst...
#5 54.72 downloading curl-7.72.0-2-x86_64.pkg.tar.zst...
#5 57.60 downloading glib2-2.64.5-1-x86_64.pkg.tar.zst...
#5 60.93 downloading hwids-20200813.1-1-any.pkg.tar.zst...
#5 63.00 downloading pambase-20200721.1-2-any.pkg.tar.zst...
#5 63.38 downloading pam-1.4.0-3-x86_64.pkg.tar.zst...
#5 65.26 downloading kbd-2.3.0-2-x86_64.pkg.tar.zst...
#5 68.25 downloading pacman-mirrorlist-20200801-1-any.pkg.tar.zst...
#5 68.63 downloading sqlite-3.33.0-2-x86_64.pkg.tar.zst...
#5 72.16 downloading libxcrypt-4.4.17-1-x86_64.pkg.tar.zst...
#5 73.20 downloading file-5.39-1-x86_64.pkg.tar.zst...
#5 75.09 downloading util-linux-2.36-2-x86_64.pkg.tar.zst...
#5 79.08 downloading systemd-246.3-1-x86_64.pkg.tar.zst...
#5 85.13 checking keyring...
#5 85.28 checking package integrity...
#5 86.18 loading package files...
#5 86.21 checking for file conflicts...
#5 86.21 checking available disk space...
#5 86.23 error: Partition /etc/resolv.conf is mounted read only
#5 86.23 error: Partition /etc/hosts is mounted read only
#5 86.23 error: not enough free disk space
#5 86.23 error: failed to commit transaction (not enough free disk space)
#5 86.24 Errors occurred,no packages were upgraded.
#5 ERROR: executor failed running [/bin/sh -c pacman -Suy --noconfirm --noprogressbar]: runc did not terminate sucessfully
------
 > [2/2] RUN pacman -Suy --noconfirm --noprogressbar:
------
failed to solve with frontend dockerfile.v0: failed to build LLB: executor failed running [/bin/sh -c pacman -Suy --noconfirm --noprogressbar]: runc did not terminate sucessfully

这失败了,我不明白为什么。

在新容器中使用相同的命令:

$ docker run --rm archlinux/base pacman -Suy --noconfirm --noprogressbar
:: Synchronizing package databases...
downloading core.db...
downloading extra.db...
downloading community.db...
:: Starting full system upgrade...
resolving dependencies...
looking for conflicting packages...

Packages (26) archlinux-keyring-20200820-1  bash-5.0.018-1  ca-certificates-mozilla-3.56-1  curl-7.72.0-2  file-5.39-1  filesystem-2020.08.21-1  gcc-libs-10.2.0-1  glib2-2.64.5-1  glibc-2.32-3  hwids-20200813.1-1  iana-etc-20200812-1  kbd-2.3.0-2  libcap-2.42-1  libgpg-error-1.39-1  libp11-kit-0.23.21-1  libutil-linux-2.36-2  libxcrypt-4.4.17-1  linux-api-headers-5.7-1  p11-kit-0.23.21-1  pacman-mirrorlist-20200801-1  pam-1.4.0-3  pambase-20200721.1-2  sqlite-3.33.0-2  systemd-246.3-1  systemd-libs-246.3-1  util-linux-2.36-2

Total Download Size:    63.83 MiB
Total Installed Size:  297.78 MiB
Net Upgrade Size:        7.41 MiB

:: Proceed with installation? [Y/n] 
:: Retrieving packages...
downloading archlinux-keyring-20200820-1-any.pkg.tar.zst...
downloading linux-api-headers-5.7-1-any.pkg.tar.zst...
downloading iana-etc-20200812-1-any.pkg.tar.zst...
downloading filesystem-2020.08.21-1-x86_64.pkg.tar.zst...
downloading glibc-2.32-3-x86_64.pkg.tar.zst...
downloading gcc-libs-10.2.0-1-x86_64.pkg.tar.zst...
downloading bash-5.0.018-1-x86_64.pkg.tar.zst...
downloading libp11-kit-0.23.21-1-x86_64.pkg.tar.zst...
downloading libcap-2.42-1-x86_64.pkg.tar.zst...
downloading libgpg-error-1.39-1-x86_64.pkg.tar.zst...
downloading systemd-libs-246.3-1-x86_64.pkg.tar.zst...
downloading p11-kit-0.23.21-1-x86_64.pkg.tar.zst...
downloading ca-certificates-mozilla-3.56-1-x86_64.pkg.tar.zst...
downloading libutil-linux-2.36-2-x86_64.pkg.tar.zst...
downloading curl-7.72.0-2-x86_64.pkg.tar.zst...
downloading glib2-2.64.5-1-x86_64.pkg.tar.zst...
downloading hwids-20200813.1-1-any.pkg.tar.zst...
downloading pambase-20200721.1-2-any.pkg.tar.zst...
downloading pam-1.4.0-3-x86_64.pkg.tar.zst...
downloading kbd-2.3.0-2-x86_64.pkg.tar.zst...
downloading pacman-mirrorlist-20200801-1-any.pkg.tar.zst...
downloading sqlite-3.33.0-2-x86_64.pkg.tar.zst...
downloading libxcrypt-4.4.17-1-x86_64.pkg.tar.zst...
downloading file-5.39-1-x86_64.pkg.tar.zst...
downloading util-linux-2.36-2-x86_64.pkg.tar.zst...
downloading systemd-246.3-1-x86_64.pkg.tar.zst...
checking keyring...
checking package integrity...
loading package files...
checking for file conflicts...
checking available disk space...
:: Processing package changes...
upgrading archlinux-keyring...
==> Appending keys from archlinux.gpg...
==> Locally signing trusted keys in keyring...
  -> Locally signing key D8AFDDA07A5B6EDFA7D8CCDAD6D055F927843F1C...
==> ERROR: D8AFDDA07A5B6EDFA7D8CCDAD6D055F927843F1C could not be locally signed.
  -> Locally signing key DDB867B92AA789C165EEFA799B729B06A680C281...
==> ERROR: DDB867B92AA789C165EEFA799B729B06A680C281 could not be locally signed.
  -> Locally signing key 91FFE0700E80619CEB73235CA88E23E377514E00...
==> ERROR: 91FFE0700E80619CEB73235CA88E23E377514E00 could not be locally signed.
  -> Locally signing key 0E8B644079F599DFC1DDC3973348882F6AC6A4C2...
==> ERROR: 0E8B644079F599DFC1DDC3973348882F6AC6A4C2 could not be locally signed.
  -> Locally signing key AB19265E5D7D20687D303246BA1DFB64FFF979E7...
==> ERROR: AB19265E5D7D20687D303246BA1DFB64FFF979E7 could not be locally signed.
upgrading linux-api-headers...
upgrading iana-etc...
upgrading filesystem...
upgrading glibc...
warning: /etc/locale.gen installed as /etc/locale.gen.pacnew
Generating locales...
  en_US.UTF-8... done
Generation complete.
upgrading gcc-libs...
upgrading bash...
upgrading libp11-kit...
upgrading libcap...
upgrading libgpg-error...
upgrading systemd-libs...
upgrading p11-kit...
upgrading ca-certificates-mozilla...
upgrading libutil-linux...
upgrading curl...
upgrading glib2...
upgrading hwids...
upgrading pambase...
upgrading pam...
upgrading kbd...
upgrading pacman-mirrorlist...
warning: /etc/pacman.d/mirrorlist installed as /etc/pacman.d/mirrorlist.pacnew
upgrading sqlite...
installing libxcrypt...
installing file...
upgrading util-linux...
upgrading systemd...
:: Running post-transaction hooks...
( 1/11) Creating system user accounts...
( 2/11) Updating journal message catalog...
( 3/11) Reloading system manager configuration...
  Skipped: Current root is not booted.
( 4/11) Updating udev hardware database...
( 5/11) Applying kernel sysctl settings...
  Skipped: Current root is not booted.
( 6/11) Creating temporary files...
/usr/lib/tmpfiles.d/journal-nocow.conf:26: Failed to resolve specifier: uninitialized /etc detected,skipping
All rules containing unresolvable specifiers will be skipped.
( 7/11) Reloading device manager configuration...
  Skipped: Device manager is not running.
( 8/11) Arming ConditionNeedsUpdate...
( 9/11) Rebuilding certificate stores...
(10/11) Reloading system bus configuration...
  Skipped: Current root is not booted.
(11/11) Cleaning up package cache...

它们之间的区别是什么?而我如何拥有一个可以正常工作的Dockerfile?

谢谢

PS:这不是空间问题(df -h不会显示接近充满的“ Use%”)

解决方法

这似乎与buildkit有关,正如Larsks所注意到的那样。使用buildkit时,/etc/resolv.conf/etc/hosts以只读方式挂载。 pacman似乎尝试更新这些文件,从而导致您看到错误。

作为一种解决方法,您可以将DOCKER_BUILDKIT environment variable从1设置为0以将其禁用。例如:

DOCKER_BUILDKIT=0 docker build .

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


依赖报错 idea导入项目后依赖报错,解决方案:https://blog.csdn.net/weixin_42420249/article/details/81191861 依赖版本报错:更换其他版本 无法下载依赖可参考:https://blog.csdn.net/weixin_42628809/a
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下 2021-12-03 13:33:33.927 ERROR 7228 [ main] o.s.b.d.LoggingFailureAnalysisReporter : *************************** APPL
错误1:gradle项目控制台输出为乱码 # 解决方案:https://blog.csdn.net/weixin_43501566/article/details/112482302 # 在gradle-wrapper.properties 添加以下内容 org.gradle.jvmargs=-Df
错误还原:在查询的过程中,传入的workType为0时,该条件不起作用 <select id="xxx"> SELECT di.id, di.name, di.work_type, di.updated... <where> <if test=&qu
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct redisServer’没有名为‘server_cpulist’的成员 redisSetCpuAffinity(server.server_cpulist); ^ server.c: 在函数‘hasActiveC
解决方案1 1、改项目中.idea/workspace.xml配置文件,增加dynamic.classpath参数 2、搜索PropertiesComponent,添加如下 <property name="dynamic.classpath" value="tru
删除根组件app.vue中的默认代码后报错:Module Error (from ./node_modules/eslint-loader/index.js): 解决方案:关闭ESlint代码检测,在项目根目录创建vue.config.js,在文件中添加 module.exports = { lin
查看spark默认的python版本 [root@master day27]# pyspark /home/software/spark-2.3.4-bin-hadoop2.7/conf/spark-env.sh: line 2: /usr/local/hadoop/bin/hadoop: No s
使用本地python环境可以成功执行 import pandas as pd import matplotlib.pyplot as plt # 设置字体 plt.rcParams['font.sans-serif'] = ['SimHei'] # 能正确显示负号 p
错误1:Request method ‘DELETE‘ not supported 错误还原:controller层有一个接口,访问该接口时报错:Request method ‘DELETE‘ not supported 错误原因:没有接收到前端传入的参数,修改为如下 参考 错误2:cannot r
错误1:启动docker镜像时报错:Error response from daemon: driver failed programming external connectivity on endpoint quirky_allen 解决方法:重启docker -> systemctl r
错误1:private field ‘xxx‘ is never assigned 按Altʾnter快捷键,选择第2项 参考:https://blog.csdn.net/shi_hong_fei_hei/article/details/88814070 错误2:启动时报错,不能找到主启动类 #
报错如下,通过源不能下载,最后警告pip需升级版本 Requirement already satisfied: pip in c:\users\ychen\appdata\local\programs\python\python310\lib\site-packages (22.0.4) Coll
错误1:maven打包报错 错误还原:使用maven打包项目时报错如下 [ERROR] Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.2.0:resources (default-resources)
错误1:服务调用时报错 服务消费者模块assess通过openFeign调用服务提供者模块hires 如下为服务提供者模块hires的控制层接口 @RestController @RequestMapping("/hires") public class FeignControl
错误1:运行项目后报如下错误 解决方案 报错2:Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project sb 解决方案:在pom.
参考 错误原因 过滤器或拦截器在生效时,redisTemplate还没有注入 解决方案:在注入容器时就生效 @Component //项目运行时就注入Spring容器 public class RedisBean { @Resource private RedisTemplate<String
使用vite构建项目报错 C:\Users\ychen\work>npm init @vitejs/app @vitejs/create-app is deprecated, use npm init vite instead C:\Users\ychen\AppData\Local\npm-