Dockerfile的一些常用随记:修订间差异

来自三线的随记
(创建页面,内容为“=== 各发行版装软件包后清理cache指令 === <nowiki>#</nowiki> 挖坑待填 === RUN yum install 多个软件包的时候的注意事项 === 部分版本的 yum 有bug,执行 <code>yum install -y package1 package2</code> 的时候只要其中一个 package 存在,命令的执行返回值都不会是非 0 导致无法感知到异常 Bug 引述: https://bugzilla.redhat.com/show_bug.cgi?id=1274211 处理方法1: yum install --setopt=skip_missing_na…”)
 
无编辑摘要
 
(未显示同一用户的2个中间版本)
第1行: 第1行:
=== 各发行版装软件包后清理cache指令 ===
=== 各发行版装软件包后清理cache指令 ===
<nowiki>#</nowiki> 挖坑待填
<nowiki>#</nowiki> 挖坑待填
==== redhat / centos 系 ====
RUN yum install --setopt=skip_missing_names_on_install=False -y git vim && \
    yum clean all && \
    rm -rvf /var/cache/yum
==== debian / ubuntu 系 ====
RUN apt-get install iputils-ping iproute2 dnsutils net-tools vim telnet netcat procps lsof tcpdump cron jq && \
    apt-get clean && \
    rm -rvf /var/lib/apt/lists/*


=== RUN yum install 多个软件包的时候的注意事项 ===
=== RUN yum install 多个软件包的时候的注意事项 ===

2024年8月12日 (一) 00:28的最新版本

各发行版装软件包后清理cache指令

# 挖坑待填

redhat / centos 系

RUN yum install --setopt=skip_missing_names_on_install=False -y git vim && \
    yum clean all && \
    rm -rvf /var/cache/yum

debian / ubuntu 系

RUN apt-get install iputils-ping iproute2 dnsutils net-tools vim telnet netcat procps lsof tcpdump cron jq && \
    apt-get clean && \
    rm -rvf /var/lib/apt/lists/*

RUN yum install 多个软件包的时候的注意事项

部分版本的 yum 有bug,执行 yum install -y package1 package2 的时候只要其中一个 package 存在,命令的执行返回值都不会是非 0 导致无法感知到异常

Bug 引述: https://bugzilla.redhat.com/show_bug.cgi?id=1274211

处理方法1:

yum install --setopt=skip_missing_names_on_install=False -y curl wget

处理方法2(不推荐):

install 前先对每个需要安装的软件包执行一次 yum info ${package}

处理方法3:

修改 yum.conf 配置增下以下配置项:

[main]
skip_missing_names_on_install=0