gpt4 book ai didi

ruby-on-rails - GitLab CI - Redis::CannotConnectError:在 127.0.0.1:6379 上连接到 Redis 时出错

转载 作者:IT王子 更新时间:2023-10-29 06:03:49 29 4
gpt4 key购买 nike

很少有测试在管道中失败并出现错误 Redis::CannotConnectError: Error connecting to Redis on 127.0.0.1:6379 (Errno::ECONNREFUSED)

我的.gitlab-ci.yml文件

image: starefossen/ruby-node:latest

services:
- mongo:latest
- redis:latest

variables:
MONGODB_URI: mongodb://mongo:27017/db_test
REDISTOGO_URL: redis://localhost:6379

before_script:
- bundle install --path=cache/bundler
- cp config/mongoid.yml.gitlab config/mongoid.yml
- RAILS_ENV=test bundle exec rake db:create db:migrate

test:
script:
- bundle exec rake test

我的 config/initializers/sidekiq.rb 文件

require 'sidekiq'
require 'sidekiq-status'

Sidekiq.configure_client do |config|
config.redis = { size: 5, url: ENV['REDISTOGO_URL'] }
end

Sidekiq.configure_server do |config|
config.server_middleware do |chain|
chain.add Sidekiq::Throttler, storage: :redis
end
config.redis = { size: 10, url: ENV['REDISTOGO_URL'] }
end

谁能给我指出正确的方向?谢谢

最佳答案

Gitlab CI 使用的 Docker 中没有一个单独的本地主机。约定是下面声明的服务名称将可用于 docker 网络中的其他容器,名称为 redis 在这种情况下:

services:
- redis:latest

所以用 redis 替换 localhost 应该就足够了:

variables:
- REDISTOGO_URL: redis://localhost:6379
+ REDISTOGO_URL: redis://redis:6379

关于ruby-on-rails - GitLab CI - Redis::CannotConnectError:在 127.0.0.1:6379 上连接到 Redis 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49423029/

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