Celery + Redis任务在Docker上不起作用

我试着为我的Django应用程序设置docker,这个应用程序有Celery和Redis(安装程序正常运行,当我尝试正常运行时,没有docker)。 我的docker-compose文件如下所示:

version: '2' services: db: image: postgres:latest env_file: docker-compose.env redis: image: redis:latest command: redis-server ports: - "6379:6379" web: build: . command: dockerize -wait tcp://redis:6379 ./docker-web-entrypoint env_file: docker-compose.env volumes: - .:/project-spartan ports: - "8000:8000" links: - db:db - redis:redis worker: build: . env_file: docker-compose.env command: dockerize -wait tcp://redis:6379 ./docker-worker-entrypoint volumes: - .:/project-spartan links: - db:db - redis:redis 

那些被调用的脚本是运行服务器和芹菜。 泊坞窗 – networking入口点:

 cd spartan/ echo "from django.contrib.auth.models import User; User.objects.create_superuser('admin', 'admin@example.com', 'pass')" | python manage.py shell python manage.py migrate python manage.py runserver 0.0.0.0:8000 

泊坞窗工人,入口点:

 cd spartan celery worker -A config.celery -Q default -n default@%h 

我的设置文件在哪里芹菜的configuration是:

 BROKER_URL = 'redis://192.168.99.100:6379/0' CELERY_BROKER_URL = 'redis://192.168.99.100:6379/0' CELERY_ACCEPT_CONTENT = ['json'] CELERY_TASK_SERIALIZER = 'json' CELERY_RESULT_SERIALIZER = 'json'