未明确调用

时间:2015-11-03 10:43:26

标签: php docker dockerfile

我正在使用官方图像构建我自己的Dockerfile,因为它是我用Ansible调整的简单配置更改的基础。 dockerfile的相关部分:

FROM php:7.0-fpm
MAINTAINER hyperfocus

# Ansible cmds

EXPOSE 9000
CMD [“php-fpm”]

每当构建图片并尝试使用docker run php_fpm_prod:v0.1启动图片时,它都会向我显示错误:/bin/sh: 1: [“php-fpm”]: not found

但每当我尝试用docker run php_fpm_prod:v0.1 php-fpm启动时,它就会成功启动:

[03-Nov-2015 10:24:38] NOTICE: fpm is running, pid 1
[03-Nov-2015 10:24:38] NOTICE: ready to handle connections

如何让docker run php_fpm_prod:v0.1表现得像docker run php_fpm_prod:v0.1 php-fpm

感谢。

1 个答案:

答案 0 :(得分:1)

php fpm DockerfileCMD已经CMD ["php-fpm"](覆盖debian-jessie CMD),因此您无需再次指定。

那些debian或php fpm Dockerfile没有定义ENTRYPOINT,这意味着默认值为/bin/sh -c

首先,确保在“Dockerfile CMD command not found”中使用正确的引号:

CMD ["php-fpm"]

(或者根本不指定CMD,因为它将从基础图像继承而来)