Как отлаживать поток запросов Docker-контейнеров - PullRequest
0 голосов
/ 03 мая 2019

В настоящее время у меня есть 2 док-контейнера, один для nginx, другой для php-fpm.Вот мой docker-compose.yml:

version: "3"

services:
    web:
        image: nginx:latest
        ports:
            - "8880:80"
        volumes:
            - .:/usr/share/nginx/html/hr_laravel
            - ./site.conf:/etc/nginx/conf.d/site.conf
            - ./storage/logs/nginx/access.log:/var/log/nginx/access.log
            - ./storage/logs/nginx/error.log:/var/log/nginx/error.log
        links:
            - php

    php:
        image: php:7-fpm
        ports:
            - "9090:9000"
        volumes:
        - .:/var/www/html/hr_laravel

, а вот site.conf:

server {
    listen   80;
    server_name hr.local;

    root /usr/share/nginx/html/hr_laravel/public;
    index index.php index.html;

    error_log  /var/log/nginx/error.log debug;
    access_log /var/log/nginx/access.log;

    location / {
        try_files $uri $uri/ @hr_laravel;
    }

    location @hr_laravel {
        rewrite /hr_laravel/(.*)$ /hr_laravel/index.php?/$1 last;
    }

    location ~ \.php$ {
        try_files $uri =404;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass 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;
    }
}

, если я запускаю докер и открываю веб-сайт, он отображает File Not Foundи из журнала написано

2019/05/03 13:51:25 [error] 7#7: *1 FastCGI sent in stderr: "Primary script unknown" while reading response header from upstream, client: 172.22.0.1, server: hr.local, request: "GET / HTTP/1.1", upstream: "fastcgi://172.22.0.2:9000", host: "hr.local:8880"

Мне нужно выяснить, как отлаживать поток веб-запроса, начиная с контейнера nginx, а затем он передается в контейнер php-fpm, поэтому я буду знать, чтослучается.

...