设置容器启动命令和参数
ECI实例通过容器镜像中的预设参数来启动容器。如果您在构建镜像时没有设置启动命令和参数,或者想要变更启动命令和参数,可以在创建ECI实例时设置。本文介绍如何为容器设置启动时要执行的命令和参数。
功能说明
如果您想覆盖镜像中设置的启动默认值,包括工作目录、启动命令和参数,可以通过以下参数进行配置:
工作目录
镜像构建时,通过WORKDIR可以指定容器的工作目录, 容器启动时执行的命令会在该目录下执行。更多信息,请参见WORKDIR。
创建ECI实例时,通过配置ECI实例中容器的工作目录( WorkingDir),可以覆盖WORKDIR。
说明如果镜像里未指定WORKDIR,且创建ECI实例也未配置工作目录,则工作目录默认为根目录。
如果指定的工作目录不存在,系统将自动创建。
启动命令和参数
镜像构建时,通过ENTRYPOINT和CMD可以指定启动容器后要执行的命令和参数。更多信息,请参见ENTRYPOINT和CMD。
创建ECI实例时,通过配置ECI实例中容器的启动命令(Command)和参数(Arg),可以覆盖ENTRYPOINT和CMD。具体生效规则如下:
镜像ENTRYPOINT
镜像CMD
容器Command
容器Arg
最终执行
说明
[mkdir]
[/data/backup]
未设置
未设置
[mkdir /data/backup]
Command和Arg均未设置,则执行镜像ENTRYPOINT和CMD。
[mkdir]
[/data/backup]
[cd]
未设置
[cd]
设置了Command,未设置Arg,则只执行Command,忽略镜像ENTRYPOINT和CMD。
[mkdir]
[/data/backup]
未设置
[/opt/backup]
[mkdir /opt/backup]
设置了Arg,未设置Command,则执行镜像ENTRYPOINT和容器Arg。
[mkdir]
[/data/backup]
[cd]
[/opt/backup]
[cd /opt/backup]
同时设置了Command和Arg,则执行容器Command和Arg。
重要启动命令必须为容器镜像支持的命令,否则会导致容器启动失败。
配置说明
OpenAPI
调用CreateContainerGroup接口创建ECI实例时,您可以通过容器中的WorkingDir、Command和Arg参数来设置工作目录、启动命令和参数。相关参数说明如下表所示。更多信息,请参见CreateContainerGroup。
名称 | 类型 | 示例值 | 描述 |
Container.N.WorkingDir | string | /usr/local/ | 容器工作目录。 |
Container.N.Command.N | array | sleep | 容器启动命令。最多20个。 |
Container.N.Arg.N | array | 100 | 容器启动命令对应的参数。最多10个。 |
控制台
通过弹性容器实例售卖页创建ECI实例时,您可以在容器配置中设置各个容器的启动命令和参数。
