首页 » 翻译 » Kubernetes » 正文

CKA 认证系列课程笔记20 Commands

其实,dockerfile中我们只需要了解

CMD 和 ENTRYPOINT 的区别就可以了

简单的例子:如果单独使用其中一个:

CMD [“sleep”,”10″]  ,这个时候我们的镜像创建的Pod ,会默认启动sleep 10 ,然后退出

如果我们想替换这个CMD 也很简单,只需要

docker run ubuntu-sleeper sleep 10 (这个命令后边传递进去的命令会替换cmd里边的参数)

但是如果我们可以只传入10 , 类似

docker run ubuntu-sleeper 10

这个时候我们就用到了ENTRYPOINT

这个时候我们再运行镜像就可以直接传递sleep的时间了

docker run ubuntu-sleeper 10

但是,如果我们不传递任何值,直接运行

docker run ubuntu-sleeper

这个时候就会报错,因为没有默认值

如何设置默认值呢?就是两个都用上

也就是说我们传递的参数,会替换掉CMD里边的参数,然后追加到ENTRYPOINT 后边

如果我们想修改ENTRYPOINT ,需要使用特殊的命令参数

 

在Kuberenetes 中,我们也可以定义

duiyingguanxi

 

也就是说kubernetes中的args === CMD

command === ENTRYPOINTS

 

 

Zhiming Zhang

Senior devops at Appannie
一个奔跑在运维路上的胖子
Zhiming Zhang

Latest posts by Zhiming Zhang (see all)