Helm Chart 加载默认 Laravel 而不是真实网站

Helm Chart 加载默认 Laravel 而不是真实网站

我已经设置了我的项目,以将此包用于 Laravel 应用程序上的 Kubernetes/Helm: https://github.com/richdynamix/arc

当我跑步时

docker-compose up

我得到了我一直在研究的真实项目,但是当我使用此命令在 tools/helm-chart 文件夹中安装 Helm 时:

helm install .

我得到的是默认的 laravel 启动页面,而不是我一直在处理的真正项目。

我已采取的步骤:

  1. 使用 docker-compose up 进行测试
  2. 使用以下方式推送到私有 docker repo

    docker push 我的用户名/reponame:latest

  3. 在 tools/helm-chart/values.yaml 设置 helm chart 详细信息和 docker user/pass

  4. 跑步

    helm 安装。

  5. 访问已部署的网站以查看其是否正常运行。

我已经在 Google Cloud 和本地进行了测试。结果相同。

您知道这里可能存在什么问题吗?

答案1

这一问题并不特定于helm install

问题在于nginx在 Laravel 应用程序的前端运行,弄得一团糟。因此,如果你要将server.php项目更改为,比如说,运行index.html而不是index.php

require_once __DIR__.'/public/index.html';

并运行本地服务器

    sukhoversha@master:~/suh$ php artisan serve
Laravel development server started: <http://127.0.0.1:8000>

这将起作用,因为流量直接到达server.php。

但是,当你使用(即使没有 helm)运行项目时docker-compose up,所有流量都会首先转到 nginx,其中包含nginx.conf以下行:

include /etc/nginx/sites-enabled/*;

如果你检查该位置,你会发现这个配置:default-20-rewriteapp.conf

location @rewriteapp {

    rewrite ^(.*)$ /index.php/$1 last;

}

因此,为了修复,您可以编辑索引.php 或编辑nginx 配置

希望这会有所帮助。

相关内容