运行 laravel 来自存储库的 sail 项目

Running laravel sail's project from repository

在继续之前,我一直在到处寻找如何 运行 laravel sail 的项目(包括 MySQL、Redis 等) 在没有任何本地环境的情况下克隆存储库后正确。 我已经阅读了其他一些问题和解释,但仍然没有任何 completed/proper 答案。

我尝试使用 sail 创建一个新的 laravel 项目,然后上传到 git,并使用不同的文件夹再次将其克隆到我的本地机器,然后尝试了以上所有方法链接。

到目前为止,我只能运行航行(我可以访问网页)但不能访问数据库等。

谢谢。

有时我会遇到现有卷的问题,这些卷存在但已经构建了所有内容。所以即使我添加了一个新项目它仍然使用不正确的卷。

请阅读下面的内容,它会更好地解释它。

所以我通常做的是在我的本地开发上使用代理服务器。这样我就可以使用不同的项目,可以让他们一起交流。

编辑::我用于本地开发的解决方案 https://blog.devgenius.io/multi-laravel-sail-sites-with-custom-domain-e13c07d9dd0c

I have tried to create a new fresh laravel project by using sail, then upload to git, and clone it again to my local machine with using different folder, then tried all of above links.

根据您提供的信息重现这些步骤,我就是这样做的:

注意:我假设你已经安装了docker。


curl -s https://laravel.build/test-app | bash


  • 转到项目并sail up(等到输出停止)只是为了测试它,您可以sail down之后:
cd test-app
 
./vendor/bin/sail up

./vendor/bin/sail down

  • 在项目中创建一个 git 存储库并将其推送到您的主机(我假设您已配置 git):
git init

git add .

git commit -m "Test app"

git remote add origin https://github.com/<your-username>/teste-app.git

git push --set-upstream origin master

  • 将 repo 克隆到不同的文件夹:
git clone https://github.com/<your-username>/teste-app.git download_test-app

docker run --rm \
    -u "$(id -u):$(id -g)" \
    -v $(pwd):/var/www/html \
    -w /var/www/html \
    laravelsail/php81-composer:latest \
    composer install --ignore-platform-reqs

  • 检查 docker ps 是否有任何容器 运行(如果不更改端口,运行 容器可能会导致问题)。如果任何容器 运行 使用 docker container stop <name of container OR ID of container>
  • 停止它们

  • .env.example复制到.env。我将 127.0.0.1 的位置更改为 localhost。在 DB_HOST 中将值更改为 mysql

  • 运行 ./vendor/bin/sail/up 应用程序将启动。在浏览器上打开应用程序(如果您没有更改端口,则为 localhost:80)。

  • 通过在浏览器中打开应用程序时单击“生成密钥”按钮或通过 运行 ./vendor/bin/sail artisan key:generate
  • 来生成应用程序密钥

  • 运行 迁移以测试数据库是否正常工作 ./vendor/bin/sail artisan migrate

你可以开始了。希望对您有所帮助!