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
на несколько строк?
Ответы
Ответ 1
Это была опечатка в файле докеров. Я пропустил space
между ENTRYPOINT
и [
. Dockerfile поддерживает многострочные ENTRYPOINT
и CMD
, завершая строку с помощью \
, также как RUN
. Итак, в моем случае это может быть
ENTRYPOINT [ "/path/myprocess", \
"arg1", \
"arg2" \
]