Docker多行CMD或ENTRYPOINT

时间:2016-05-11 09:41:30

标签: docker dockerfile

由于有许多参数,我有一个非常长的命令行用于默认进程。我认为最简单的方法是创建一个脚本(例如。run.sh),然后在ENTRYPOINTCMD中调用此脚本。我想知道是否有办法制作ENTRYPOINTCMD多行(我们写RUN的方式)。例如。

ENTRYPOINT["/path/myprocess",
           "arg1",
           "arg2" ]

我认为这是一种有效的语法,因为格式是json。但是,docker build会抛出错误

Step 14 : ENTRYPOINT[
Unknown instruction: ENTRYPOINT[

有没有办法可以将ENTRYPOINT分成多行?

1 个答案:

答案 0 :(得分:49)

这是dockerfile中的拼写错误。我在spaceENTRYPOINT之间错过了[。 Dockerfile通过使用ENTRYPOINT终止行来支持多行CMD\,与RUN相同。所以,就我而言,它可以是

ENTRYPOINT [ "/path/myprocess", \
             "arg1",            \
             "arg2"             \
]