Archive T206 ‐ AdminII Wiki - dudleydehenau/Ephec GitHub Wiki
vps1.poulpipoulpe.xyz. IN DS 11831 8 2 3162AADEA8CD5DD3E426527F65A9D727256E5DB4FD218216C2E21AF92D153CD6
version: '3'
services:
web:
image: nginx
container_name: nginx
hostname: nginx
ports:
- "80:80"
depends_on:
- php
volumes:
- /home/deesdee/docker/data/web/html:/var/www/html
- /home/deesdee/docker/data/web/nginx:/etc/nginx
networks:
- db
mariadb:
image: mariadb:latest
container_name: mariadb
hostname: mariadb
environment:
MYSQL_ROOT_PASSWORD: potatochips
ports:
- "3306:3306"
volumes:
- /home/deesdee/docker/data/web/mariadb:/var/lib/mysql
networks:
- db
php:
build: ./php
container_name: php
hostname: php
volumes:
- /home/deesdee/docker/data/web/php/www:/var/www/html/www
networks:
- db
networks:
db:
Problème:
Lors du démarrage du service NGINX, le processus échouait en raison de l'absence du fichier fastcgi_params
.
Solution:
J'ai créer le fichier et rentrer les informations dedans :
cat <<EOF > /etc/nginx/fastcgi_params
fastcgi_param QUERY_STRING \$query_string;
fastcgi_param REQUEST_METHOD \$request_method;
fastcgi_param CONTENT_TYPE \$content_type;
fastcgi_param CONTENT_LENGTH \$content_length;
fastcgi_param SCRIPT_NAME \$fastcgi_script_name;
fastcgi_param REQUEST_URI \$request_uri;
fastcgi_param DOCUMENT_URI \$document_uri;
fastcgi_param DOCUMENT_ROOT \$document_root;
fastcgi_param SERVER_PROTOCOL \$server_protocol;
fastcgi_param GATEWAY_INTERFACE CGI/1.1;
fastcgi_param SERVER_SOFTWARE nginx/\$nginx_version;
fastcgi_param REMOTE_ADDR \$remote_addr;
fastcgi_param REMOTE_PORT \$remote_port;
fastcgi_param SERVER_ADDR \$server_addr;
fastcgi_param SERVER_PORT \$server_port;
fastcgi_param SERVER_NAME \$server_name;
fastcgi_param HTTPS \$https;
fastcgi_param REDIRECT_STATUS 200;
EOF
Une fois le conteneur NGINX redémarré, tout refonctionnait correctement.
Problème:
Le conteneur PHP s'arrêtait immédiatement après son démarrage sans aucun message d'erreur explicite dans les logs. Lors de l'investigation, il était noté dans les docker logs que des interactions avec le shell vide. Il s'est avéré que le problème venait d'une mauvaise configuration des adresses dans le fichier products.php
(que j'ai pu constaté dans les logs Nginx).
Solution:
Lorsque j'ai debug FastCGI, j'ai modifié les adresses par nom de container par les address ip docker. J'avais laissé l'addresse et cela ne fonctionnait donc plus. Dés que j'ai remis la bonne ip pour la base de donnée, le php fonctionnait.
Si le nom d'hôte est incorrect, cela ne sera pas affiché explicitement dans les logs PHP, mais il sera visible dans les logs NGINX lorsqu'il ne parvient pas à se connecter à la base de données.