2016-08-19 16 views
0

現在、Kubernetes(およびミニクーブ)ではセロリ、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とは対照的に、rootユーザーとして読み込まれるため、ソースコントロールの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に示されているのと同じホストとして表示されます。

ここからどこに行くのかはわかりません。どんな提案も感謝しています。また、私はを追加しました(これは本番環境では実行されません)、私のDockerfileに心配しないでください。それでも上記の問題が発生しました。 docker history endocode/celery-app-addも役に立ちませんでした。

+0

セロリワーカーを実行しようとするたびに、設定アプリケーションは読み込まれず、ワーカーは「amqp:// guest:** @ rabbit:5672 //:」に接続しようとし続けます正しいブローカサービスホスト。 – super

答えて

0

このセロリーに基づいて問題が判明しましたissue。セロリは、CELERY_BROKER_URLをアプリの設定で設定できるものよりも使用する方が好きです。この問題を解決するには、CELERY_BROKER_URLDockerfileに設定していますが、設定が正しく選択されています。

+0

同じエラーが発生しています。しかし、 'CELERY_BROKER_URL'を使った後も修正できませんでした。何かご意見は? – PythonEnthusiast

+0

また、共有リンクも確認しました。私はそれを明示的に渡していません。どうすればデバッグできますか? – PythonEnthusiast

関連する問題