IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Apache Discussion :

Configuration apache2 et php-fpm en mode conteneur.


Sujet :

Apache

  1. #1
    Membre actif
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2007
    Messages
    282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Gers (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Octobre 2007
    Messages : 282
    Points : 229
    Points
    229
    Par défaut Configuration apache2 et php-fpm en mode conteneur.
    Bonjour à tous

    Je poste ici un soucis lié à docker car j'ai l'impression que cela vient plus d'un soucis apache2 et virtualhost que de docker.
    Voila, j'ai 2 conteneurs, un avec php-fpm.
    Si dessous le dockerfile:
    Code bash : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    FROM php:5.5-fpm
    WORKDIR /var/www
    EXPOSE 9000
    CMD ["php-fpm"]
    Je lance un build et un run
    Code bash : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    docker build -t phpfpm .
    docker run -ti --name PHP -p 9000:9000 -v /var/www:/var/www -d phpfpm

    Ensuite j'ai créé mon propre dockerfile pour apache2:
    Code bash : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    FROM    ubuntu
    MAINTAINER PascalCanadas "leknoppix@users.noreply.github.com"
    ENV DEBIAN_FRONTEND noninteractive
     
    ENV APACHE_RUN_USER www-data
    ENV APACHE_RUN_GROUP www-data
    ENV APACHE_LOG_DIR /var/log/apache2
     
    # Depots, mises a jour et installs
    RUN apt-get update && \
    	apt-get upgrade -y -q && \
    	apt-get dist-upgrade -y -q \
    	&& apt-get -y -q autoclean && \
    	apt-get -y -q autoremove && \
    	apt-get install -y -q \
    		apache2 \
    		vim
     
    RUN echo "ServerName localhost" >> /etc/apache2/apache2.conf && \
        sed -i "s/AllowOverride None/AllowOverride All/g" /etc/apache2/apache2.conf
     
    RUN apt-get install -y -q apache2-mpm-worker apache2-mpm-event
     
    RUN apt-get install -y -q libapache2-mod-fcgid
     
    RUN a2dismod mpm_prefork
     
    RUN a2enmod rewrite && \
     	a2enmod proxy && \
     	a2enmod proxy_fcgi
     
    RUN a2enmod actions alias
     
    EXPOSE 80
     
    CMD ["/usr/sbin/apache2ctl", "-D", "FOREGROUND"]
    Et je le lance avec:
    Code bash : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    docker build -t apache2.
    docker run --link PHP --name WEB -p 80:80 -v /var/www:/var/www -v /var/docker/apache2/site:/etc/apache2/site-enabled -ti apache2

    Le serveur apache2 fonctionne. Par contre, pour le relier, j'utilise un proxy fcgi pour que les fichiers php soit interprété.

    Voici mon virtualhost actuel:
    Code bash : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    <VirtualHost *:80>
    	# The ServerName directive sets the request scheme, hostname and port that
    	# the server uses to identify itself. This is used when creating
    	# redirection URLs. In the context of virtual hosts, the ServerName
    	# specifies what hostname must appear in the request's Host: header to
    	# match this virtual host. For the default virtual host (this file) this
    	# value is not decisive as it is used as a last resort host regardless.
    	# However, you must set it for any further virtual host explicitly.
    	#ServerName www.example.com
     
    	ServerAdmin webmaster@localhost
    	DirectoryIndex index.html index.php
    	DocumentRoot /var/www
    	<Directory "/var/www">
    		Options -Indexes
    		AllowOverride All
    		Order allow,deny
    		allow from all
    	</Directory>
     
        ProxyPassMatch ^/(.*\.php(/.*)?)$ fcgi://PHP:9000/var/www/$1
     
    	# Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
    	# error, crit, alert, emerg.
    	# It is also possible to configure the loglevel for particular
    	# modules, e.g.
    	#LogLevel info ssl:warn
     
    	ErrorLog ${APACHE_LOG_DIR}/error.log
    	CustomLog ${APACHE_LOG_DIR}/access.log combined
     
    	# For most configuration files from conf-available/, which are
    	# enabled or disabled at a global level, it is possible to
    	# include a line for only one particular virtual host. For example the
    	# following line enables the CGI configuration for this host only
    	# after it has been globally disabled with "a2disconf".
    	#Include conf-available/serve-cgi-bin.conf
    </VirtualHost>
     
    # vim: syntax=apache ts=4 sw=4 sts=4 sr noet
    Hors, quand je charge un projet php ou un simple fichier contenant un phpinfo(); cela fonctionne.
    Par contre, la racine de mon serveur, j'ai un file File not found. quand je teste l'ouverture d'un simple fichier html, il se charge.
    Quelqu'un aurait-il une idée de la source de mon soucis?
    Merci d'avance.

    lemirandais

  2. #2
    Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2002
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2002
    Messages : 62
    Points : 52
    Points
    52
    Par défaut
    Bonjour,
    Je remonte ce post juste pour connaître la solution (si solution il y a).
    Merci

  3. #3
    Membre actif
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2007
    Messages
    282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Gers (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Octobre 2007
    Messages : 282
    Points : 229
    Points
    229
    Par défaut
    bonjour

    J'y étais arrivé par contre, je n'ai pas gardé la config car cela ramait trop. J'ai migré vers nginx.
    Si cela t’intéresse => https://github.com/leknoppix/docker

Discussions similaires

  1. Configuration optimisée de PHP-FPM
    Par Natsirt dans le forum Administration système
    Réponses: 0
    Dernier message: 08/11/2013, 20h43
  2. Problème de configuration du module PHP
    Par RV80 dans le forum Apache
    Réponses: 1
    Dernier message: 26/07/2006, 10h29
  3. configuration apache2 userdir
    Par niconeo dans le forum Apache
    Réponses: 2
    Dernier message: 07/05/2006, 15h01
  4. [Configuration] Probleme config Php / MySql
    Par Kips dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 3
    Dernier message: 22/02/2006, 16h24
  5. [Configuration] Installation de PHP + Pbm de fonctions non reconnues
    Par BARBIER dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 12
    Dernier message: 23/11/2005, 10h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo