您的位置:

compose启动php,compose安装

本文目录一览:

docker-compose启动php-fpm报错问题

当你的机子关闭了ipv6启动php-fpm会出现:

address family not supported by protocol

鲁莽解决方法用命令 find / -name zz-docker.conf 找到配置文件位置

直接修改listen = [::]:9000 为 listen = 0.0.0.0:9000

官方DockerFIle:

一般正确做法是修改建立新的dockerfile,

sed "s/[::]:/0.0.0.0:/g" zz-docker.conf

(/var/lib/docker/aufs/diff/864a8992572a0791d45316907d130acaff7f61fe878662b3937c49477496d85c/usr/local/etc/php-fpm.d/zz-docker.conf)

另外解决方法就是不用compose,而是建立Dockerfile文件,里面跑ubuntu,nginx等,然后顺便安装phpfpm,相当于一个镜像,这样和外部本机ipv6环境无关啦。

docker在正式线上环境的使用一般是怎样的

1.分别制作好apache,php镜像

2.在新机器安装好docker和compose

3.使用compose管理启动apache和php镜像

docker php-fpm 一直重启问题处理

使用 docker-compose up -d 启动 php-fpm 容器后会发现容器成功启动之后会马上关闭。由于设置了 restart: always 会导致容器再次启动然后关闭

官方 php-fpm : 7.1 镜像,使用自定义的 php-fpm 配置。

php-fpm 配置是从现有生产服务器上复制过来的。配置没有问题。

看log,发现fpm正常启动了,然后马上就退出

跟镜像中自带的 php-fpm.conf 比较发现镜像中使用 daemonize = no ,而我自定义配置中 daemonize = yes 是后台运行的。

那么很明显官方镜像是故意使用 daemonize = no 不让 fpm 在后台中运行,进而阻止容器退出

修改 php-fpm.conf 中如下

daemonize = no