Dockerfile的一些常用随记

来自三线的随记
Admin讨论 | 贡献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