简述Docker的CMD指令 ?
Docker的CMD指令用于指定容器启动时要运行的命令。当容器启动时,CMD指令中的命令将会被执行。CMD指令可以有多种格式,以下是其中三种常用的格式:
- 执行一个可执行文件:
CMD ["executable","param1","param2"]
这种格式用于指定一个可执行文件和该文件的参数。例如:
CMD ["java", "-jar", "myapp.jar"]
- 指定默认参数:
CMD ["param1","param2"]
这种格式用于为ENTRYPOINT指令提供默认参数。例如:
ENTRYPOINT ["java"]
CMD ["-jar", "myapp.jar"]
- 执行shell命令:
CMD command param1 param2
这种格式使用“/bin/sh -c”来执行指定的命令。例如:
CMD echo "Hello, world!"
注意,在使用CMD指令时,应该注意不要与ENTRYPOINT指令产生冲突。如果ENTRYPOINT指令存在,那么CMD指令中的内容将会作为ENTRYPOINT指令的参数。如果想要覆盖ENTRYPOINT指令的参数,可以使用“–entrypoint”标志来指定一个新的ENTRYPOINT。