Возникает "kombu.exceptions.OperationalError" При запуске сервера, состоящего из django, rabbitMQ, celery worker и celery beat с помощью docker-compose
В настоящее время я пытаюсь развернуть сервер, состоящий из django, rabbitMQ, celery worker и beat. В то время как celery beat хорошо выполняет созданную периодическую задачу, celery worker, выполняющий задачу отправки SMS, выдает приведенное выше сообщение об ошибке и не работает.
version: "3.9"
services:
was_container:
build:
context: ./was
dockerfile: Dockerfile.was
container_name: was_container
ports:
- "8000:8000"
env_file:
- ./was/.env
restart: always
entrypoint: /entrypoint.sh
networks:
- miti_network
rabbitmq:
image: rabbitmq:3-management
container_name: rabbitmq
environment:
- RABBITMQ_DEFAULT_USER=admin
- RABBITMQ_DEFAULT_PASS=admin
- RABBITMQ_DEFAULT_VHOST=/
ports:
- "5672:5672"
- "15672:15672"
expose:
- "15672"
networks:
- miti_network
celery_worker:
container_name: celery_worker
build:
context: ./was
dockerfile: Dockerfile.celery-worker
environment:
- CELERY_BROKER_URL=amqp://admin:admin@rabbitmq:5672//
depends_on:
- was_container
- rabbitmq
networks:
- miti_network
command: celery -A config worker --loglevel=info --concurrency=1
celery_beat:
container_name: celery_beat
build:
context: ./was
dockerfile: Dockerfile.celery-worker
environment:
- CELERY_BROKER_URL=amqp://admin:admin@rabbitmq:5672//
depends_on:
- was_container
- rabbitmq
- celery_worker
networks:
- miti_network
command: celery -A config beat --loglevel=info
networks:
miti_network:
driver: bridge
import os
import dotenv
from datetime import timedelta
from celery import Celery
dotenv.load_dotenv()
os.environ.setdefault('DJANGO_SETTINGS_MODULE',
f'config.settings.{os.getenv("ENVIRONMENT")}')
app = Celery('MITI')
app.config_from_object('django.conf:settings', namespace='CELERY')
CELERYBEAT_SCHEDULE = {
'game_status_auto_update': {
'task': 'config.tasks.update_game_status',
'schedule': timedelta(minutes=1),
},
}
app.conf.update(
CELERYBEAT_SCHEDULE = CELERYBEAT_SCHEDULE
)
app.autodiscover_tasks()
from .celery import app as celery_app
__all__ = ['celery_app']
Пожалуйста, скажите мне причину и как я могу ее устранить.
Полный журнал похож на...