ошибка сервера redis docker приложение: временный сбой в разрешении имен - PullRequest
1 голос
/ 06 августа 2020

Я пытаюсь запустить сервер Redis для очередей задач. Он работает на моем локальном ноутбуке, но когда я портирую его на виртуальную машину (CentOS), он дает мне эту ошибку:

redis.exceptions.ConnectionError: Error -3 connecting to redis:6379. Temporary failure in name resolution.

Я просмотрел его, и с этим нет потоков указывает c ошибка. Не похоже, что кто-то сталкивался с этим? Мой фрагмент кода выглядит так:

    redis_url = current_app.config['REDIS_URL']

    with Connection(redis.from_url(redis_url)):
        q = Queue()
        task = q.enqueue(upload_data_to_ES, args=(data,), job_timeout=150, result_ttl=1000)

Единственное существенное отличие состоит в том, что я установил для файла docker-compose.yml значение network_mode: "host", чтобы он мог взаимодействовать с поисковым сервером elasti c на виртуальной машине. . Это вызовет проблему? Не знаю, как они связаны. Помощь будет принята с благодарностью.

Мой docker-compose.yml файл выглядит так:

version: '3.7'

services:
  gilsonapp:
    build: .
    network_mode: "host"
    image: gilsonapp:latest
    container_name: gilsonapp
    ports:
      - 8003:8003
    command: python app.py
    volumes:
      - ./app:/usr/src/app
      - /test_files:/usr/src/app/mnt/tsl_files
    environment:
      - FLASK_DEBUG=1
      - FLASK_ENV=testing
      - REDIS_URL="redis://redis:6379/0"
    env_file:
      - oracle_env_vars
    working_dir: /usr/src/app
    depends_on:
      - redis

  worker:
    image: gilsonapp
    container_name: gilsonapp_worker
    command: python worker.py
    volumes:
      - ./app:/usr/src/app
    working_dir: /usr/src/app
    environment:
      - REDIS_URL="redis://redis:6379/0"
      - APP_SETTINGS=config.TestingConfig
    depends_on:
      - redis

  redis:
    image: redis:alpine
    expose:
      - '6379'
...