【问题标题】:How to test laravel 5.6 with mysql 8 docker如何使用 mysql 8 docker 测试 laravel 5.6
【发布时间】:2018-12-06 21:36:14
【问题描述】:

由于 mysql 8 中的新哈希算法,我无法在 gitlab 中针对此 mysql 版本成功运行 CI 测试。

我相信这也适用于其他 CI 引擎。

假设我的.gitlab-ci.yml 就是这么简单:

build:
  stage: build
  image: chilio/laravel-dusk-ci:stable
  services:
    - mysql:8.0

  script:
    - cp .env.example .env
    - composer install
    - php artisan migrate

这是我得到的错误:

SQLSTATE[HY000] [2054] The server requested authentication method unknown to the client

我发现了不同的帖子,关于重新配置 mysql 实例,但是这个图像是官方的 mysql docker,我相信它应该以相同的方式工作,跨不同的版本......

从 mysql:5.5 到 5.7 的图像没有引入任何问题,但是使用 mysql:8.0 我得到了之前所说的错误...

到目前为止,我还没有找到任何解决方案来解决这个问题。

有什么想法吗?

【问题讨论】:

    标签: php laravel docker gitlab-ci-runner mysql-8.0


    【解决方案1】:

    我终于让它工作了。

    在这种情况下,mysql服务应该被不同地调用:

    services:
         - name: mysql:latest
           command: ["--default-authentication-plugin=mysql_native_password"]
    

    【讨论】:

      猜你喜欢
      • 2021-08-22
      • 2019-07-29
      • 2020-07-10
      • 2019-07-26
      • 2018-02-10
      • 2021-11-16
      • 2023-04-04
      • 2018-06-21
      • 2018-12-22
      相关资源
      最近更新 更多