php – 如何使用mysql 8 docker测试laravel 5.6
作者:互联网
由于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我收到错误,如前所述……
到目前为止,我还没有找到任何解决方案来解决这个问题.
有任何想法吗?
解决方法:
最后我设法让它发挥作用.
在这种情况下,应该以不同方式调用mysql服务:
services:
- name: mysql:latest
command: ["--default-authentication-plugin=mysql_native_password"]
标签:gitlab-ci-runner,php,laravel,docker,mysql-8-0 来源: https://codeday.me/bug/20190910/1801663.html