如何在Docker上诊断404找不到错误Nginx?

koa*_*aok 5 nginx laravel docker laradock

我正在尝试制作以下拉达克(docker + laravel):https : //github.com/LaraDock/laradock说明

我安装了docker +克隆的laradock.git laradock文件夹位于/ myHD /。

我编辑了laradock / docker-compose.xml

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

volumes_source:
    image: tianon/true
    volumes:
        - ../project01/:/var/www/laravel
Run Code Online (Sandbox Code Playgroud)

之后,我不确定这是在编辑docker-file之后如何正确重新加载的方法,我这样做了:

 docker-compose up -d nginx mysql
Run Code Online (Sandbox Code Playgroud)

现在,由于我没有找到nginx错误404:如何调试问题?

附加信息:

我通过bash进入了机器:

 docker-compose exec  --user=laradock workspace bash
Run Code Online (Sandbox Code Playgroud)

但我找不到

 /etc/nginx/... path (nginx folder doesn't exists !?!?) 
Run Code Online (Sandbox Code Playgroud)

dev*_*a.y 2

猜测您的 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`
Run Code Online (Sandbox Code Playgroud)

在运行之前,从列表中查找 nginx 容器的 ID

docker exec -it <container-id> bash
Run Code Online (Sandbox Code Playgroud)

然后,您应该可以评估您的 nginx 容器以进行所需的更改。

或者不直接访问容器,只需在 nginx 配置文件中进行更改,查找“server”和“root”,将根目录更改为var/www/laravel/public新目录 /project01/public

执行命令来关闭容器

docker-composer down
Run Code Online (Sandbox Code Playgroud)

再次加星标

docker-compose up -d nginx mysql phpfpm 
Run Code Online (Sandbox Code Playgroud)

搏一搏