gpt4 book ai didi

php - Gitlab CI 配置与 Laravel Docker Redis 错误的主机或端口

转载 作者:行者123 更新时间:2023-12-02 19:51:07 24 4
gpt4 key购买 nike

我正在为一个使用 redis 作为缓存驱动程序的 Laravel 项目在 .gitlab-ci.yml 文件中进行 Gitlab CI 配置。在这个配置文件中,我使用了一个图像,其中包含我们生产环境中使用的所有 linux 包和 php 扩展。这包括由 pecl 安装的 redis 扩展,因此 phpredis 可以在 Laravel 中使用。

在花了相当多的时间学习持续集成的过程和gitlab ci文件的配置后,我在部署镜像时遇到了以下错误:


In PhpRedisConnector.php line 126:

Redis::connect() expects parameter 2 to be int, string given

参数应该只是作为 int 的端口,但不知何故变成了 tcp://111.111.11.11:6379

记录在案https://docs.gitlab.com/ee/ci/services/redis.html你的 .env 中的主机应该是 redis,所以我有。在部署期间转储配置导致端口为某个 tcp://111.111.11.11:6379 连接字符串并且主机为空。在我们的应用程序或我们使用的任何扩展程序中都无法更改。

我使用 https://hub.docker.com/_/redis/作为 .gitlab-ci.yml 中的服务。

...
services:
- name: redis:4
...

最佳答案

解决方法在这里: https://laracasts.com/discuss/channels/testing/gitlab-ci-weird-redis-host

这个变量在任何地方都没有记录,但它以某种方式解决了问题。将以下内容添加到您的 .gitlab-ci.yml 文件中:

variables:
REDIS_PORT: 6379

如果有人找到有关此变量的文档以及更多选项,请告诉我!

关于php - Gitlab CI 配置与 Laravel Docker Redis 错误的主机或端口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60654725/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com