【问题标题】:Laravel Sail is shutting down old Sail processes on every sail commandLaravel Sail 正在关闭每个 Sails 命令的旧 Sail 进程
【发布时间】:2021-06-12 00:33:48
【问题描述】:

我刚开始使用 Laravel Sail (v1.4.7),如果我运行这个:

sail up -d

然后所有容器都启动了。

然后我尝试运行这个:

sail composer dump-autoload

响应是:

projectname-               docker-              Exit 1
Shutting down old Sail processes...
Sail is not running.

You may Sail using the following commands: './vendor/bin/sail up' or './vendor/bin/sail up -d'

我尝试在没有帆的情况下运行composer dump-autoload,它运行良好。但这不是在容器内运行的(所以将来可能会在不同的版本上运行)。

更新:

我在 WSL2、Ubuntu 20.04 中运行我的容器。

为什么此时要关闭容器?但实际上不只是这个命令发生关闭。每个sail ... 命令的出现都是一样的。

有什么想法吗?

【问题讨论】:

  • 在运行sail up -d 之后,您能否查看docker-compose ps 是否包含任何退出的服务?就我而言,Meilisearch 没有正确启动,因为 ARM 上的 Docker 存在问题。 Sail 会检查任何已退出的服务,如果发现任何服务则停止。在 docker-compose.yml 中禁用 Meil​​isearch 会暂时修复该问题,直到发布修复程序。
  • 我做了docker-compose ps,我看到我的mysql服务有Exit 1状态。我该怎么做才能修复它?我使用默认的docker-compose.yaml 文件
  • 在我的情况下,mysql 容器没有启动,因为我使用的是 DB_USER=root 并且它会抱怨。至少在macos上。在 linux 上,我认为不会。记得查看sail uplogs
  • 就在一年前,被称为 root 的 sql 用户对我来说还不错,但今天从 root 更改它已经解决了这个问题

标签: laravel-8 laravel-sail


【解决方案1】:

如果项目根目录中的docker-compose.yml 文件中的任何 个容器由于任何原因无法正常启动,那么 Laravel Sail 将执行此操作。解决方案是确保所有容器都启动。容器未启动的原因将是一个单独的问题,因为发生这种情况的原因有很多。

尝试在docker-composer.yml 中注释掉失败容器的服务,以确认这是问题所在。

【讨论】:

    【解决方案2】:

    就像评论中建议的@mwm一样,它可以与数据库的用户名相关。

    我刚刚遇到了同样的问题,它与用户名有关。在我将用户名 root 更改为其他名称后,它开始正常工作。

    【讨论】:

      猜你喜欢
      • 2022-01-26
      • 2021-09-18
      • 2021-10-13
      • 2023-03-13
      • 2021-07-30
      • 2021-07-17
      • 2021-08-30
      • 2023-01-10
      • 2023-01-10
      相关资源
      最近更新 更多