django/redis docker セットアップと一緒に別の docker コンテナーでセロリを実行しようとしています。
を実行すると、コンテナがコンソールに繰り返しスパムを送信docker-compose up -d --build
していることをログにdocker-compose logs --tail=0 --follow
示しますcelery_1
Usage: nc [OPTIONS] HOST PORT - connect
nc [OPTIONS] -l -p PORT [HOST] [PORT] - listen
-e PROG Run PROG after connect (must be last)
-l Listen mode, for inbound connects
-lk With -e, provides persistent server
-p PORT Local port
-s ADDR Local address
-w SEC Timeout for connects and final net reads
-i SEC Delay interval for lines sent
-n Don't do DNS resolution
-u UDP mode
-v Verbose
-o FILE Hex dump traffic
-z Zero-I/O mode (scanning)
docker-compose.yaml
からセロリサービスを削除し、手動で実行することで、セロリdocker exec -it backend_1 celery -A proj -l info
を正しく機能させることができdocker-compose up -d --build
ます。この手動プロセスの機能を 内で複製するにはどうすればよいdocker-compose.yaml
ですか?
私docker-compose.yaml
のように見えます
version: '3.7'
services:
backend:
build: ./backend
command: python manage.py runserver 0.0.0.0:8000
volumes:
- ./backend/app/:/usr/src/app/
ports:
- 8000:8000
env_file:
- ./.env.dev
depends_on:
- db
- redis
links:
- db:db
celery:
build: ./backend
command: celery -A proj worker -l info
volumes:
- ./backend/app/:/usr/src/app/
depends_on:
- db
- redis
redis:
image: redis:5.0.6-alpine
command: redis-server
expose:
- "6379"
db:
image: postgres:12.0-alpine
ports:
- 5432:5432
volumes:
- /tmp/postgres_data:/var/lib/postgresql/data/