2016-08-19 3 views
0

현재 Kubernetes (및 minikube)에서 샐러리, rabbitmq 및 꽃을 사용하여 기본 작업 대기열과 프론트 엔드를 배포하려고합니다. 여기 예제를 다음입니다 : 나는 지침에 따라 작동하는 모든 것을 얻을 수셀러리가 kubernetes에 rabbitmq 브로커에 연결하지 않습니다

https://github.com/kubernetes/kubernetes/tree/release-1.3/examples/celery-rabbitmq

; 그러나 에서 docker build을 실행하여 ./celery-app-add에있는 이미지를 내 리포지토리에 넣고 endocode/celery-app-add<mine>/celery-app-add으로 바꿉니 다. 더 이상 실행할 수있는 예제가 없습니다. 나는 endocode/celery-app-add 이미지를 가져 와서 이미지에서 bash를 실행하면 을 (반대로 <mine>/celery-app-addDockerfile과 반대로)으로로드하기 때문에 소스 제어에서 Dockerfile이 잘못된 것으로 가정합니다.

용기 및 서비스를 모두 부팅 후, 나는 로그에 다음을 볼 수

2016-08-18T21:05:44.846591547Z AttributeError: 'ChannelPromise' object has no attribute '__value__'

셀러리 로그를 보여

2016-08-19T01:38:49.933659218Z [2016-08-19 01:38:49,933: ERROR/MainProcess] consumer: Cannot connect to amqp://guest:**@rabbit:5672//: [Errno -2] Name or service not known.

내가 RABBITMQ_SERVICE_SERVICE_HOST 에코 경우 컨테이너 내에서 kubectl get services을 실행 한 후 rabbitmq-service에 표시된 것과 동일한 호스트로 나타납니다.

여기에서 어디로 가야할지 모르겠습니다. 모든 제안을 부탁드립니다. 또한 USER root (이 작업을 실행하지 않으므로 걱정하지 마십시오)을 Dockerfile에 추가했지만 여전히 위의 동일한 문제가 발생했습니다. docker history endocode/celery-app-add도 그다지 도움이되지 않았습니다.

+0

셀러리 작업자를 실행할 때마다 config 응용 프로그램이 읽히지 않고 작업자가 셀프 작업자 대신 'amqp : // guest : ** @ rabbit : 5672 // :' 올바른 중개인 서비스 호스트. – super

답변

0

문제는이 샐러리를 기반으로합니다. issue. 셀러리는 앱 설정에서 설정할 수있는 것보다 CELERY_BROKER_URL을 선호합니다. 이 문제를 해결하기 위해 CELERY_BROKER_URLDockerfile에 설정하지 않았고 올바르게 구성을 선택했습니다.

+0

동일한 오류가 발생합니다. 그러나 couldn 'CELERY_BROKER_URL'을 사용한 후에 그것을 고칠 수 있습니다. 이견있는 사람? – PythonEnthusiast

+0

또한 공유 링크도 확인했습니다. 나는 그것을 명시 적으로 전달하지 않을 것이다. 어떻게 디버깅 할 수 있습니까? – PythonEnthusiast

관련 문제