【发布时间】:2022-08-21 20:50:35
【问题描述】:
我有一个 dockerfile,我想在其中运行 bash 命令。该命令可以根据条件而有所不同。因此,我决定将此命令作为参数传递。
我可以在 RUN 中注入参数吗?
它看起来像这样:
RUN ${MYCOMMAND}
我还需要知道是否可以在 dockerfile 的同一层中运行多个命令。
编辑:-
我需要在 dockerfile 中安装一堆类似于pip install <app> 的应用程序。
如果我有 4 个应用程序,该命令将与此类似。
RUN pip install app_1 && \\
pip install app_2 && \\
pip install app_3 && \\
pip install app_4
但是,提供的应用程序列表是动态的。
这就是为什么我认为我可以将整组命令字符串作为参数注入。
-
这有点可能(通过
ARGdirective)。然而,这听起来像XY porblem。你的用例是什么? -
是啊,你说得对。我会更新问题。
-
通常,如果您有一长串要使用 pip 安装的东西,您可以通过创建一个名为 requirements.txt 的文件,将该文件复制到 Docker 容器中,然后运行
pip install -r requirements.txt来实现。
标签: docker dockerfile