Подтвердить что ты не робот

Docker multiline CMD или ENTRYPOINT

У меня есть очень длинная командная строка для процесса по умолчанию из-за множества аргументов. Я думаю, что проще всего создать script (например, run.sh), а затем вызвать этот script в ENTRYPOINT или CMD. Мне интересно, есть ли способ сделать ваш ENTRYPOINT или CMD многострочный (способ записи RUN). Например,

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

Я думал, что это правильный синтаксис, поскольку формат json. Однако docker build выдает ошибку

Step 14 : ENTRYPOINT[
Unknown instruction: ENTRYPOINT[

Есть ли способ разделить ENTRYPOINT на несколько строк?

4b9b3361

Ответ 1

Это была опечатка в файле докеров. Я пропустил space между ENTRYPOINT и [. Dockerfile поддерживает многострочные ENTRYPOINT и CMD, завершая строку с помощью \, также как RUN. Итак, в моем случае это может быть

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