/services/create
端点中有两个不同的参数,分别称为Command
和Args
。描述说:
-
Command
(字符串数组)–要在图像中运行的命令 -
Args
(字符串数组)–命令的参数
我对Command
是一个数组感到困惑:如果可以将命令参数传递给它(似乎是docker-py splits it as a shell command的情况),{的目的是什么{1}}然后?
/services/create
端点中有两个不同的参数,分别称为Command
和Args
。描述说:
Command
(字符串数组)–要在图像中运行的命令Args
(字符串数组)–命令的参数我对Command
是一个数组感到困惑:如果可以将命令参数传递给它(似乎是docker-py splits it as a shell command的情况),{的目的是什么{1}}然后?
我目前的猜测:Command
和Args
的用途与常规Docker容器中Entrypoint
和Cmd
的用途相同。 Args
刚刚附加到Command
:
POST /services/create
{
"Name": "test","TaskTemplate": {
"ContainerSpec": {
"Image": "ubuntu","Command": ["echo","foo"],"Args": ["bar"]
}
}
}
$ docker service logs test
test.1.npltmr9c69fz@hostname | foo bar
如果您省略了Command
,它将从图像的入口点获取:
POST /services/create
{
"Name": "test2","Args": ["echo","baz!"]
}
}
}
$ docker service logs test2
test2.1.c16waqqxtdgd@hostname | baz!
这只是我的经验测试的结果,因此,任何可靠的文档/源代码证明都值得赞赏!