как диагностировать 404 не найденную ошибку nginx на докере?

Я пытаюсь настроить laradock (docker+laravel) следующим образом: https://github.com/LaraDock/laradock инструкции

Я установил докер + клонировал laradock.git. Папка laradock находится в /myHD/...path../www/laradock на том же уровне. У меня есть мои проекты laravel /myHD/...path../www/project01.

Я отредактировал laradock/docker-compose.xml

### Laravel Application Code Container ######################

volumes_source:
    image: tianon/true
    volumes:
        - ../project01/:/var/www/laravel

После этого, но я не уверен, что это правильно перезагрузить после редактирования docker-файла, я сделал:

 docker-compose up -d nginx mysql

теперь, когда у меня есть ошибка 404 nginx, не найдено: как я могу отладить проблему?

Дополнительная информация:

Я вошел в машину через bash:

 docker-compose exec  --user=laradock workspace bash

но я не могу найти

 /etc/nginx/... path (nginx folder doesn't exists !?!?) 

person koalaok    schedule 15.10.2016    source источник
comment
Привет @koalaok, попробуйте использовать приведенную ниже команду для доступа к вашему контейнеру Nginx; docker-compose exec nginx bash   -  person Nishant Shrivastava    schedule 13.03.2017
comment
Для меня проблема заключалась в том, что я должен был оставить APP_CODE_PATH_HOST=../ таким, каким он был в ~/laradock/.env, потому что в моем ~/laradock/nginx/sites/default.conf я установил root /var/www/tt/public;.   -  person Ryan    schedule 09.07.2018


Ответы (1)


Предполагая, что ваш nginx находится не в контейнере рабочей области, а в отдельном контейнере, вы выполнили следующее: docker-compose up -d nginx mysql

Это, вероятно, будет запускать только контейнеры nginx и mysql, а не ваш контейнер php-fpm. Также важен путь к вашему тому, так как от этого зависит конфигурация вашего сервера nginx.

Чтобы запустить php-fpm, добавьте php-fpm или что-то подобное в команду docker-compose up, посмотрите, как это называется в вашем файле docker-compose.yaml, например,
docker-compose up -d nginx mysql phpfpm

Чтобы оценить ваш контейнер nginx, прежде всего выполните

 `docker ps -a`

В списке найдите идентификатор вашего контейнера nginx перед запуском

docker exec -it <container-id> bash

Затем это должно дать вам возможность оценить ваш контейнер nginx, чтобы внести необходимые изменения.

Или, не обращаясь напрямую к контейнеру, просто внесите изменения в файл конфигурации nginx, найдите «сервер», а «корень» измените корень с var/www/laravel/public на новый каталог /project01/public.

Выполните команду, чтобы сбить ваши контейнеры

docker-composer down

Звезда снова с

docker-compose up -d nginx mysql phpfpm 

Попробуй

person dev_a.y    schedule 15.10.2016
comment
спасибо за Ваш ответ. Но: phpfpm — это php-fpm, и ваше решение у меня не работает. - person koalaok; 15.10.2016
comment
Yh, каким бы способом (phpfpm или php-fpm) в зависимости от того, как он написан. Попробуйте sudo chmod -R 775 в каталоге вашего хранилища в Laravel. - person dev_a.y; 15.10.2016