Open1
Celeryメモ
rabbitmq
celeryの前に、そもそmessage-brokerをさわったことがなかったので、
ここではrabbitmqを使って基本的な動作を試してみる。
まずはrabbitmqのtutorialのpython版をやってみる。
hello world
rabbitmqの起動
まずはdockerで起動する。
docker compose up -d
以下はdocker-compose.yml
services:
rabbitmq:
image: rabbitmq:3.11.7-management
container_name: rabbitmq_django
ports:
- 5672:5672
- 15672:15672
# ユーザ名/パスワードの設定
# 特に設定しない場合、guest/guestが暗黙的に設定される
environment:
- RABBITMQ_DEFAULT_USER=user
- RABBITMQ_DEFAULT_PASS=password
# データの永続化
volumes:
- celery_dj:/var/lib/rabbitmq
volumes:
celery_dj:
sender.py
tutorialのままだと認証部分が書かれてないのでうごかなかった。usernameとpassword
を指定してconnectionParametersに追加してやる。
import pika
CREDENTIALS = pika.PlainCredentials('user', 'password')
connection = pika.BlockingConnection(
pika.ConnectionParameters(host='localhost',credentials=CREDENTIALS))
channel = connection.channel()