@aaalllsss

Как соединить apache с docker контейнером php-fpm?

Пытаюсь разобраться с докером

Сделал тестовую машину на Centos 7
Установил туда апач
Cделал докер контейнер с php-fpm 5.3.3

Dockerfile
FROM centos:6
RUN yum -y update && yum clean all
RUN yum -y install php-* && yum clean all
RUN sed -i -e 's/127.0.0.1:9000/\/home\/www\/php-fpm_sockets\/php53.socket/' /etc/php-fpm.d/www.conf
RUN sed -i -e '/allowed_clients/d' /etc/php-fpm.d/www.conf
RUN sed -i -e 's/\[www]/\[php53]/' /etc/php-fpm.d/www.conf
RUN sed -i -e 's/\;date.timezone =/date.timezone = Europe\/Berlin/' /etc/php.ini
RUN sed -i -e 's/listen.owner =/listen.owner = apache/' /etc/php-fpm.d/www.conf
RUN sed -i -e 's/listen.group =/listen.group = apache/' /etc/php-fpm.d/www.conf
RUN mkdir /home/www
RUN chown apache: /var/run/php-fpm/
USER apache:apache
ENTRYPOINT /usr/sbin/php-fpm --nodaemonize


Запустил контейнер, вроде работает и не могу понять что мне нужно еще что бы соединить мой локальный апач с этим контейнером
мод прокси и mod_proxy_fcgi включены, в /etc/httpd/conf.d добавил файл php.conf

<FilesMatch \.php$>
    SetHandler "proxy:fcgi://127.0.0.1:9000"
</FilesMatch>


при переходе на ip/info.php Service Unavailable

что я не так сделал или не доделал?
  • Вопрос задан
  • 878 просмотров
Пригласить эксперта
Ответы на вопрос 2
kotomyava
@kotomyava
Системный администратор
Если у вас php-fpm слушает сокет, то зачем пытаться к нему подключаться по tcp, да ещё и на 127.0.0.1?

Либо надо чтобы сокет был доступен где-то снаружи, и его использовать, либо надо использовать сеть докера и подключаться по tcp используя адреса внутри неё.

А в целом, вам стоит перестать бездумно копипестить, и начать думать над действиями, вероятно. Больше читать документацию, и меньше howto.
Ответ написан
Комментировать
rexido
@rexido
Очень плохой человек )
В докере открыть порт для php fpm и с внешнего apache коннектится к ip_docker:port_docker
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы