PROJET AUTOBLOG


Planet-Libre

source: Planet-Libre

⇐ retour index

Remi Collet : PHP-FPM dans Docker

jeudi 11 décembre 2014 à 14:23

Cas d'utilisation : faire tourner php 5.3.3 sur une machine de développement en Fedora 20 / 21, pour déploiement en production sur RHEL-6 (et aucune SCL de php 5.3 n'est actuellement disponible).

Cet exemple peut facilement s'adapter pour toutes les versions disponibles sous forme de RPM (5.3.3 dans RHEL-6, 5.4.16 dans RHEL-7, 5.4.16 et 5.5.6 dans RHSCL 1.2 ou en utilisant un dépôt tiers).

J'utilise le Dockerfile suivant :

FROM centos:6
RUN yum -y update && yum clean all
RUN yum -y install php-fpm php-mbstring php-mysql php-gd && yum clean all
RUN sed -e 's/127.0.0.1:9000/9000/' \\
        -e '/allowed_clients/d' \\
        -e '/catch_workers_output/s/^;//' \\
        -e '/error_log/d' \\
        -i /etc/php-fpm.d/www.conf
RUN mkdir -p /var/www/html
EXPOSE 9000
ENTRYPOINT /usr/sbin/php-fpm --nodaemonize

Installation :

Dossier des scripts :

Description des changements de la configuration du pool fpm :

Création du container :

docker build -t fpm53 .

Lancement du container :

docker run -v /var/www/html:/var/www/html -p 127.0.0.1:9003:9000 fpm53

A noter : mappage du dossier /var/www/html et du port 9000 (du container) sur le port 9003 (de l'hote)

Conclusion :

Même si je suis un fervent adepte des Software Collections, en leur absence, on dispose très simplement d'une version opérationnelle de PHP 5.3.3 sur une distribution récente (testé sous Fedora 20) en bénéficiant de l'utilisation des dépôts officiels.

Gravatar de Remi Collet
Original post of Remi Collet.Votez pour ce billet sur Planet Libre.

Articles similaires