informatica:sistemas_operativos:virtualizacion:docker:docker_compose:nginx_php
Docker Compose: nginx + PHP
Despliegue de una arquitectura multicontenedor compuesta por un servidor web Nginx y un intérprete de PHP.
- Imagen Nginx: https://hub.docker.com/_/nginx
- Imagen PHP: https://hub.docker.com/_/php
version: '3.4' services: webserver: container_name: lar-nginx image: nginx:alpine ports: - "80:80" volumes: - ./htdocs:/usr/share/nginx/html - ./config/nginx/site.conf:/etc/nginx/conf.d/default.conf php: container_name: lar-php build: # dockerfile: Dockerfile context: . volumes: - ./htdocs:/usr/share/nginx/html
Contenido del fichero site.conf:
server {
listen 80;
index index.php index.html;
server_name localhost;
root /usr/share/nginx/html/;
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass lar-php:9000;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
}
}
El nombre del host que se le pasa a fastcgi_pass debe coincidir con lo establecido en container_name.
Contenido del Dockerfile:
FROM php:7-fpm-alpine RUN docker-php-ext-install mysqli pdo_mysql # RUN docker-php-ext-install session # RUN docker-php-ext-install pdo
El directorio raíz desde el que el servidor web enviará los documentos está establecido en ./htdocs.
informatica/sistemas_operativos/virtualizacion/docker/docker_compose/nginx_php.txt · Última modificación: por tempwin
