问题标签 [laravel-sail]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
12358 浏览

mysql - Laravel Sail 重建默认数据库

根据文档:

此外,当 MySQL 容器启动时,它将确保存在名称与 DB_DATABASE 环境变量的值匹配的数据库。

我的.env文件看起来像这样。

然而,当我尝试通过 运行迁移时sail artisan migrate,我得到了这个错误: SQLSTATE[HY000] [1049] Unknown database 'test' (SQL: select * from information_schema.tables where table_schema = test and table_name = migrations and table_type = 'BASE TABLE')

我试过的:

  • 一起删除 docker 容器和图像。
  • 运行sail build --no-cache(尝试完全重建所有内容)
  • 运行时sail shell,我进入 MySQL 并显示所有数据库。我可以在那里看到默认的 laravel 数据库。

你如何告诉帆创建正确的DB_DATABASE

我的docker-compose.yml

0 投票
3 回答
1917 浏览

laravel - Laravel Sail + Dusk + Selenium:连接被拒绝

我有一个带 Sail 的 Laravel,我想用 Laravel Dusk 进行自动化测试。我按照Dusk DocumentationSail + Dusk Installation中的所有说明进行操作,但是当我运行默认测试时,我收到以下错误消息:

但是如果在 Insomnia 中执行请求,它运行没有任何问题:

失眠请求

这是我的码头工人撰写:

还有我的 DuskTestCase

我真的不知道我做错了什么。对不起我的英语,我是巴西人。

0 投票
2 回答
1945 浏览

mysql - 将 Laravel Sail 与单独的测试数据库一起使用

我使用 Laravel Sail 作为我的开发环境。根据文档

当 MySQL 容器启动时,它将确保存在名称与 DB_DATABASE 环境变量的值匹配的数据库。

这非常适合我的开发环境,但在测试方面并没有那么多,因为我.env.testing定义了一个单独的数据库,而且似乎没有创建这个数据库 - 当我sail mysql进入容器并运行show databases;它时没有列出。因此,sail test在涉及数据库的每个测试中,运行都会失败。

我的.env文件包含以下内容:

我的.env.testing文件包含以下内容:

DB_USERNAME并且DB_PASSWORD在两个文件中都相同。

如何创建此数据库以使其在运行时可用sail test

编辑:

当我挖掘存储库代码时,我发现在mysql构建容器映像时正在创建数据库,但看起来并没有创建多个数据库的选项

MYSQL_DATABASE 此变量是可选的,允许您指定要在映像启动时创建的数据库的名称。如果提供了用户/密码(见下文),则该用户将被授予对此数据库的超级用户访问权限(对应于 GRANT ALL)。

0 投票
1 回答
1735 浏览

git - 带有 Laravel Sail 和版本控制的 Laravel 8 开发项目

我正在学习 Laravel 8,我想使用 Laravel Sail 建立一个快速的开发环境。

由于我们通常不会提交到 Git 中的供应商目录,我们如何从新的 Git 克隆运行 Sail?没有它我们不能使用“composer install”。这是否意味着我们应该提交 vendor/bin 和 vendor/composer 文件夹?关于它的常见做法是什么?

我们是否应该将 /vendor/bin 提交给 git 以获得开箱即用的全新开发环境?

0 投票
1 回答
1865 浏览

mysql - 现有项目上的 Laravel Sail Mysql 8.0 问题

我已经创建了一个项目,我想开始使用 laravelsai 进行本地开发,但是当我启动容器时,sail up --build我在 mysql 容器中有错误,并带有以下完整输出:

错误在这一行

我已经尝试解决此问题的步骤:

  • 创建一个新的 private_key.pem

  • 更改mysql版本

  • 从 docker 中删除所有图像 docker system prune -a

没有任何效果。

如果我创建一个新项目,我可以连接到 MySQL,我只是不能在已经创建的项目上使用它

0 投票
1 回答
2149 浏览

laravel - Laravel Sai:以 root 身份登录或创建一个 root 用户

我正在使用sail 并尝试将shell 用作root,这是不可能的。切换到用户 root 要求输入密码,我不知道。

我试图更改dockerfile:

我试图添加一个新用户并给他和标准sai 用户root 权限,但它不起作用。sairoot 用户在容器内不可用。当然,我用那个 dockerfile 重建了容器。据我所知,更改后的 dockerfile 会正确执行。

有人知道如何使用sai将用户更改为root吗?

我想要做的是将 imagemagick 安装到容器中。我已经将“apt-get install imagemagick imagemagick-doc”添加到 dockerfile 中,但它没有安装在容器中。如果你知道怎么做,我真的很感激!

谢谢。

0 投票
3 回答
8163 浏览

mysql - 无法连接到数据库 Laravel Sail

我正在尝试创建一个简单的 laravel 项目,并且我正在关注 laracast 以使用 Sail 设置项目。该项目运行良好,我能够使用 vendor/bin/sail artisan migrate 进行迁移。

laracast 的下一步是使用 tableplus 连接数据库。但我无法通过这一步。我在 tableplus 中收到此错误: 在此处输入图像描述

这是我的 .env:

我没有更改 docker-compose 文件中的任何设置,在 docker desktop 中我可以看到 mysql 在端口 3306 上运行并且没有设置密码。

知道如何解决这个问题并连接到数据库吗?

编辑:发现问题。当我运行brew services list时,看到旧版本的 mysql 仍在运行。停止它,brew services stop mysql现在我可以连接

0 投票
2 回答
750 浏览

laravel - 如果我使用 Laravel Sail,我应该使用什么 SESSION_DOMAIN?

我想使用 Nuxt.js 作为我的前端和 laravel sanctum 作为我的后端身份验证提供程序。我应该如何SESSION_DOMAIN在我的 laravel 项目的 .env 文件中设置密钥。

我还应该编辑文件中服务器对象部分的任何内容nuxt.config.js以使其工作吗?

0 投票
1 回答
2153 浏览

laravel - LARAVEL SAIL 出错 [php_network_getaddresses: getaddrinfo failed]

我遇到了问题laravel sail,碰巧我刚刚克隆了存储库并且它没有改变,docker-compose.yml它完全完好无损,但是,在执行之后./vendor/bin/sail up我启动了容器并且当我尝试进行迁移时会抛出以下错误

SQLSTATE [HY000] [2002] php_network_getaddresses:getaddrinfo 失败:名称解析暂时失败(SQL:SHOW FULL TABLES WHERE table_type = 'BASE TABLE')

Docker-compose.yml

.env 文件

0 投票
1 回答
145 浏览

laravel-8 - 如何从 Sail 以 headfull 模式运行 laravel 黄昏并查看运行测试的浏览器

我正在为 BDD 玩 Laravel 帆和黄昏。我完全遵循了 Laravel 的风帆文档,并且能够在风帆容器内以无头或全头模式运行测试。但我想通过打开浏览器来查看测试运行。如果我不使用风帆,那将很容易。由于我正在使用它,因此我无法这样做。有什么指示可以实现这一点吗?提前致谢