Div*_*ank -2 docker dockerfile
我在 os: 中创建了 dockerfile rockylinux:8。出现错误:/bin/sh: find: command not found
Dockerfile:
FROM rockylinux:8 AS builder
RUN mkdir /usr/share/dashboards
WORKDIR /usr/share/dashboards
RUN find /usr/share/dashboards
Run Code Online (Sandbox Code Playgroud)
错误-
/bin/sh: find: command not found
The command '/bin/sh -c find /usr/share/dashboards' returned a non-zero code: 127
Run Code Online (Sandbox Code Playgroud)
该find命令不包含在基本 rockylinux 映像中,您必须安装该findutils软件包才能使用它。
我刚刚测试过,这有效:
FROM rockylinux:8 AS builder
RUN yum install -y findutils
WORKDIR /usr/share/dashboards
RUN find /usr/share/dashboards
Run Code Online (Sandbox Code Playgroud)
现在,最佳实践是在构建开始时更新映像,以便获得最新的软件包和安全补丁,所以我实际上会这样做:
FROM rockylinux:8 AS builder
RUN yum -y update
RUN yum install -y findutils
WORKDIR /usr/share/dashboards
RUN find /usr/share/dashboards
Run Code Online (Sandbox Code Playgroud)
稍后您可以通过将两个 yum 命令放在同一个 RUN 指令中来优化它,也许还可以清理缓存,但这应该足以让您开始。
PS:在他们的编辑中,@DavidMaze 指出mkdirDockerfile 中的行是多余的,因为WORKDIR指令已经创建了目录。
| 归档时间: |
|
| 查看次数: |
1993 次 |
| 最近记录: |