| RUN export | 仅当前 shell 会话有效 |
|---|---|
| ENV | 写入镜像配置,后续层与运行时都生效 |
| 跨阶段 | ENV 在阶段内生效;跨阶段值需显式传递 |
示例
示例
RUN export FOO=bar && echo "$FOO" # 仅本行有效
ENV FOO=bar
RUN echo "$FOO" # 有效:/bin/sh -c 拿到 ENV构建脚本里临时变量用 shell 变量即可;应用配置类变量统一走 ENV 或运行时注入。
RUN 里的 export 只是当条命令的 shell 变量,下一条指令就消失;需要跨层、跨运行期的持久变量使用 ENV。
| RUN export | 仅当前 shell 会话有效 |
|---|---|
| ENV | 写入镜像配置,后续层与运行时都生效 |
| 跨阶段 | ENV 在阶段内生效;跨阶段值需显式传递 |
RUN export FOO=bar && echo "$FOO" # 仅本行有效
ENV FOO=bar
RUN echo "$FOO" # 有效:/bin/sh -c 拿到 ENV