在Docker服务创建API端点中,Command和Args参数的目的是什么?

/services/create端点中有两个不同的参数,分别称为CommandArgs。描述说:

  • Command(字符串数组)–要在图像中运行的命令
  • Args(字符串数组)–命令的参数

我对Command是一个数组感到困惑:如果可以将命令参数传递给它(似乎是docker-py splits it as a shell command的情况),{的目的是什么{1}}然后?

iCMS 回答:在Docker服务创建API端点中,Command和Args参数的目的是什么?

我目前的猜测:CommandArgs的用途与常规Docker容器中EntrypointCmd的用途相同。 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!

这只是我的经验测试的结果,因此,任何可靠的文档/源代码证明都值得赞赏!

本文链接:https://www.f2er.com/2200278.html

大家都在问