РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
⊗dcPhNgLn 10 of 30 menu
◀ ▶

Связка Nginx и PHP в Docker

Связка Nginx и PHP отдаёт страницу сценария: веб-сервер принимает браузер, а интерпретатор считает файл. Nginx отдаёт статику сам, а для .php передаёт путь в FPM по имени сервиса app и порту 9000.

Сервис web на образе nginx публикует 8080:80. Сервис app на php:8.5-fpm без ports. Оба монтируют ./site в /var/www/html, а свой default.conf подменяет стандартный сайт nginx:

server { listen 80; root /var/www/html; index index.php index.html; location / { try_files $uri $uri/ /index.php?$query_string; } location ~ \.php$ { fastcgi_pass app:9000; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; } }

Сценарий печатает слово hello:

<?php echo 'hello';

Тома и монтирование конфига собраны в compose.yaml:

services: web: image: nginx ports: - "8080:80" volumes: - ./site:/var/www/html - ./default.conf:/etc/nginx/conf.d/default.conf app: image: php:8.5-fpm volumes: - ./site:/var/www/html

После подъёма в фоне localhost:8080 покажет в браузере слово hello. Запуск проекта:

docker compose up -d

Соберите пару сервисов edge и core с ответом live на порту 8082 и общей папкой ./public.

Проверьте текст страницы по localhost:8082.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить