docker-compose没有将CMD传递给入口点

时间:2018-10-02 10:28:04

标签: docker docker-compose

version: '3.1'
services:
  abcxyz:
    command: php artisan queue:work

相关的“ Dockerfile”具有以下设置:

ENTRYPOINT /tmp/entrypoint.sh

但是,如果此docker-compose得到运行,并且我检查了容器,则会看到以下内容:

    "Entrypoint": [
        "/bin/sh",
        "-c",
        "/tmp/entrypoint.sh"
    ],

为什么忽略command?入口点脚本不接收任何参数。


在docker-compose.yaml中设置以下内容:

entrypoint: /tmp/entrypoint.sh
command: "php artisan queue:work"

生成具有以下内容的容器:

        "Cmd": null,
        "ArgsEscaped": true,
        "Image": "sha256:ba309b04dade86b5a2e849ec2eebab01f59949318f6baa173e318a76985c5ef1",
        "Volumes": null,
        "WorkingDir": "/var/www",
        "Entrypoint": [
            "/bin/sh",
            "-c",
            "/tmp/entrypoint.sh"
        ],

但是,实际脚本只传递了一个php而不是php artisan queue:work的单个第一个参数。 !??!

1 个答案:

答案 0 :(得分:0)

  abcxyz:
    entrypoint: "/tmp/entrypoint.sh \"php artisan queue:work\""

以上内容已解决。