k8s 中 command、args 和 dockerfile 中 entrypoint、cmd 之间的作用
Docker | kubernetes | 描述 |
---|---|---|
ENTRYPOINT | command | 容器中运行的可执行文件 |
CMD | args | 传递给可执行文件的参数 |
当用户同时在kubernetes中的yaml文件中写了command和args的时候,默认是会覆盖DockerFile中的命令行和参数,完整的情况分类如下:
- 如果command和args都没有写,那么用DockerFile默认的配置。
- 如果command写了,但args没有写,那么Docker默认的配置会被忽略而且仅仅执行.yaml文件的command(不带任何参数的)。
- 如果command没写,但args写了,那么Docker默认配置的ENTRYPOINT的命令行会被执行,但是调用的参数是.yaml中的args。
- 如果如果command和args都写了,那么Docker默认的配置被忽略,使用.yaml的配置。
相关文章:
在kubernetes中定义覆盖docker中的命令和参数
Docker(三):Dockerfile 命令详解
为者常成,行者常至
自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)