为什么这个 ENTRYPOINT 不正确?
Why is this ENTRYPOINT incorrect?
我的 DockerFile
有一个 ENTRYPOINT
只是回应 ENTRYPOINT echo %windir%\system32\inetsrv\appcmd
命令 window.
- 此语法有效:
ENTRYPOINT echo %windir%\system32\inetsrv\appcmd
- 这不是:
ENTRYPOINT ["echo", "%windir%\system32\inetsrv\appcmd"]
输出为'[\"echo\"' is not recognized as an internal or external command, operable program or batch file.
这两种语法有什么不同?
答案在 documentation(谁会想到?)
第一个表单在 shell 中执行,因此等同于您可能键入的任何内容。
第二种形式不在 shell 中执行,它只是使用提供的参数执行文件。
我的 DockerFile
有一个 ENTRYPOINT
只是回应 ENTRYPOINT echo %windir%\system32\inetsrv\appcmd
命令 window.
- 此语法有效:
ENTRYPOINT echo %windir%\system32\inetsrv\appcmd
- 这不是:
ENTRYPOINT ["echo", "%windir%\system32\inetsrv\appcmd"]
输出为'[\"echo\"' is not recognized as an internal or external command, operable program or batch file.
这两种语法有什么不同?
答案在 documentation(谁会想到?)
第一个表单在 shell 中执行,因此等同于您可能键入的任何内容。
第二种形式不在 shell 中执行,它只是使用提供的参数执行文件。