В вашем Dockerfile вы можете попытаться изменить последнюю строку с CMD ["python", "producer.py"]
на CMD ["python", "/code/producer.py"]
.
Обновление:
Я провел тестирование с вашим кодом. Проблема не в вашем Dockerfile, а в вашем docker-compose.yml. Контекст сборки в нем неверен. Так что вам не нужно менять Dockerfile. Если вы уже изменили, как предложено выше, измените его обратно на CMD ["python", "producer.py"]
.
Вам необходимо обновить ваш docker-compose.yml. Следующее работает в моей среде.
version: '2'
services:
rabbitmq:
image: rabbitmq:3.6.9-management-alpine
ports:
- "4369:4369"
- "5671:5671"
- "5672:5672"
- "15671:15671"
- "15672:15672"
- "25672:25672"
environment:
- RABBITMQ_DEFAULT_USER=guest
- RABBITMQ_DEFAULT_PASS=guest
networks:
- sky-net
rabbitmq-producer:
build:
context: ./producer
depends_on:
- rabbitmq
links:
- rabbitmq
networks:
- sky-net
networks:
sky-net:
driver: bridge