zoukankan      html  css  js  c++  java
  • 【Docker】Dockerfile 之 ENTRYPOINT(四)

    参考教程:https://docs.docker.com/engine/reference/builder/

    环境

    1. virtual box 6.1
    2. centos 7.8
    3. docker 19.03

    ENTRYPOINT 和 CMD 的交互

    Both CMD and ENTRYPOINT instructions define what command gets executed when running a container. There are few rules that describe their co-operation.
    CMDENTRYPOINT 指令均定义了运行容器时执行的命令。有少量的规则描述他们的合作。

    1. Dockerfile should specify at least one of CMD or ENTRYPOINT commands.

    2. Dockerfile 应该至少指定 CMDENTRYPOINT 命令之一。

    3. ENTRYPOINT should be defined when using the container as an executable.

    4. 使用容器作为可执行文件时,应定义 ENTRYPOINT

    5. CMD should be used as a way of defining default arguments for an ENTRYPOINT command or for executing an ad-hoc command in a container.

    6. 应该使用 CMD 作为定义 ENTRYPOINT 命令或在容器中执行命令的默认参数的方式。

    7. CMD will be overridden when running the container with alternative arguments.

    8. 当使用其他参数运行容器时,CMD 将被覆盖。

    The table below shows what command is executed for different ENTRYPOINT / CMD combinations:
    下表显示了针对不同的 ENTRYPOINT/CMD 组合执行的命令:

    No ENTRYPOINT ENTRYPOINT exec_entry p1_entry ENTRYPOINT [“exec_entry”, “p1_entry”]
    No CMD error, not allowed /bin/sh -c exec_entry p1_entry exec_entry p1_entry
    CMD [“exec_cmd”, “p1_cmd”] exec_cmd p1_cmd /bin/sh -c exec_entry p1_entry exec_entry p1_entry exec_cmd p1_cmd
    CMD [“p1_cmd”, “p2_cmd”] p1_cmd p2_cmd /bin/sh -c exec_entry p1_entry exec_entry p1_entry p1_cmd p2_cmd
    CMD exec_cmd p1_cmd /bin/sh -c exec_cmd p1_cmd /bin/sh -c exec_entry p1_entry exec_entry p1_entry /bin/sh -c exec_cmd p1_cmd

    Note

    If CMD is defined from the base image, setting ENTRYPOINT will reset CMD to an empty value. In this scenario, CMD must be defined in the current image to have a value.

    注意

    如果从基础镜像定义了 CMD,则设置 ENTRYPOINT 会将 CMD 重置为空值。在这种情况下,必须在当前镜像中定义CMD 以具有值。

    总结

    介绍了 Dockerfile 中 ENTRYPOINT 指令和 CMD 指令的交互。

  • 相关阅读:
    springMVC中@RequestParam和@RequestBody的作用
    java 中Excel的导入导出
    数据库字段名称与实体类属性不一致的处理措施
    linux下解压命令大全
    linux 下 cat
    mysqli
    解析php mysql 事务处理回滚操作(附实例)
    css 样式(checkbox开关、css按钮)
    cetons 怎么强制卸载 PHP
    yhdsir@function:php
  • 原文地址:https://www.cnblogs.com/jiangbo44/p/14116463.html
Copyright © 2011-2022 走看看