рабочие кроссовки "не смогли перевести имя хоста \" postgres \ "по адресу: имя или услуга неизвестна - PullRequest
0 голосов
/ 14 октября 2019

Я получаю эту ошибку "не удалось перевести имя хоста \" postgres \ "по адресу: имя или служба неизвестна при попытке вызвать модель, наследующуюся от ActiveRecord :: Base, в рабочих кроссовках.

У нас есть rabbitmq и сервер приложений, работающие в док-контейнерах. Если я делаю 'rails c' из контейнера приложения и получаю доступ к данным модели, это работает. Но когда тот же самый код вызывается из работника кроссовок, он выдает ошибку.

class MarketServer
  include Sneakers::Worker
  from_queue 'some_queue',
             env: nil,
             timeout_job_after: 12.hours

  def work_with_params(msg, _headers, params)
    begin
      data = {}
      ActiveRecord::Base.connection_pool.with_connection do
        data['market_name'] = Market.last.name
      end
      Rails.logger.debug 'data built'

      ack! # we need to let queue know that message was received
  end
end
...