entrypoint和entrypoint cmd有何区别?

文化 2年前 阅读:15 评论:0
entrypoint是什么?

entrypoint是Dockerfile的一个指令,用于指定容器启动时要施行的号令或脚本。它能够是一个可施行文件,也能够是一个脚本文件。entrypoint指令指定的号令或脚本会成为容器的主历程,曲到容器停行或主历程退出。

entrypoint cmd是什么?

entrypoint和entrypoint cmd有何区别?

entrypoint cmd是entrypoint指令的一个参数,它用于指定entrypoint指令施行时要传递给主历程的参数。entrypoint cmd能够是一个字符串或一个数组。若是entrypoint cmd是一个字符串,那么它会被解释成一个shell号令。若是entrypoint cmd是一个数组,那么它的每个元素会被解释成一个零丁的参数。

entrypoint和entrypoint cmd的区别

entrypoint和entrypoint cmd都是Dockerfile的指令,但它们的感化差别。entrypoint指令用于指定容器启动时要施行的号令或脚本,而entrypoint cmd用于指定entrypoint指令施行时要传递给主历程的参数。

举个例子,若是我们有一个Dockerfile,此中有以下指令:

```

ENTRYPOINT ["/bin/myapp"]

CMD ["--config", "/etc/myapp.conf"]

那个Dockerfile指定容器启动时要施行的主历程是/bin/myapp,而且传递了参数--config和/etc/myapp.conf给主历程。

若是我们运行那个容器,能够通过docker run号令传递参数笼盖entrypoint cmd指定的参数,例如:

docker run myapp_container --debug

那个号令会启动myapp_container容器,并传递--debug参数给主历程,笼盖了entrypoint cmd指定的--config和/etc/myapp.conf参数。

总结
版权声明

本文仅代表作者观点,不代表木答案立场。

网友评论