我正在为需要 OpenSSL 1.1.1 而不是默认 3.0 的应用程序创建 docker 映像
我在 Dockerfile 中添加了以下命令
RUN wget -O - https://www.openssl.org/source/openssl-1.1.1u.tar.gz | tar zxf -
RUN cd openssl-1.1.1u
RUN ./config --prefix=/usr/local
但是,该行在RUN ./config --prefix=/usr/local
构建图像期间抛出以下错误。
错误:buildx 失败:错误:无法解决:进程“/bin/sh -c ./config --prefix=/usr/local”未成功完成:退出代码:127
我该如何修复这个错误?
每个 RUN 命令都是独立的,因此 cd 不会在它们之间持续存在;你需要做类似的事情:
此外,每个 RUN 命令都会在生成的 docker 镜像中创建一个新层;如果您想最终得到精简的图像,特别是如果您想清理文件,您可能需要进一步组合它们:
(清理文件只有在同一层中完成时才会真正删除它们;否则,文件仍然存在,只是标记为已删除)