| shell 形式 | RUN echo $HOME → 变量由 shell 展开 |
|---|---|
| exec 形式 | RUN ["/bin/echo", "$HOME"] → 原样输出字符串 |
| 默认 shell | /bin/sh(Debian 系为 dash) |
示例
示例
# shell 形式:支持管道与变量
RUN ps aux | grep nginx || true
# exec 形式:不经 shell,参数原样传递
RUN ["/usr/bin/env", "bash", "-lc", "echo $PATH"]需要 bash 特性时,用 SHELL ["/bin/bash", "-c"] 改默认 shell,或在命令里显式 bash -c。