Установка rh-php72 на Centos 7 в пределах Docker - PullRequest
0 голосов
/ 12 февраля 2020

У меня возникают проблемы при запуске php 7.2 в контейнере docker на базовом образе Centos 7 с Apache для развертывания в DC / OS. Вот мой базовый Dockerfile:

FROM COMPANY_NETWORK.DockerRepos/Centos:latest
RUN yum update -y
RUN yum install -y rh-php72 rh-php72-php
RUN ln -s /opt/rh/rh-php72/root/usr/bin/php /usr/bin/php
COPY ./test.php /var/www/html/test.php
COPY ./php.conf /etc/httpd/conf.d/php.conf
RUN chmod -R 755 /var/www/html
EXPOSE 80

Единственный доступный пакет php - это rh-php72, поскольку сеть находится за брандмауэром компании, мы не можем получить обычные репозитории, чтобы получить php 7.4 и т. Д. c, поэтому мы вынуждены заставить работать пакеты rh- *.

test.php - это просто phpinfo(), а php.conf содержит:

AddType  application/x-httpd-php         .php
AddType  application/x-httpd-php-source  .phps
DirectoryIndex index.php
SetEnvIfNoCase ^Authorization$ "(.+)" HTTP_AUTHORIZATION=$1

Когда вы создаете и запускаете это изображение, браузер отображает только исходный код при просмотре теста. php, и вы получаете Apache страницу приветствия для /.

Если вы -it /bin/bash, то при запуске httpd -V Я получаю ожидаемую версию и конфигурацию модуля, а php -v дает мне PHP 7.2, как и ожидалось. Файл httpd/conf содержит подстановочный знак, включающий в качестве последней строки что-либо в каталоге conf.d.

Я в тупике. Любые мысли о том, как запустить пакет RH PHP 7.2 в Docker?

...