-
Notifications
You must be signed in to change notification settings - Fork 129
Update docker compose #99
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update docker compose #99
Conversation
WalkthroughA RabbitMQ service has been added to the Changes
Sequence Diagram(s)sequenceDiagram
participant Developer
participant DockerCompose
participant RabbitMQ
participant Weaviate
Developer->>DockerCompose: docker-compose up
DockerCompose->>RabbitMQ: Start container (rabbitmq:3-management)
DockerCompose->>Weaviate: Start container (existing)
RabbitMQ->>Developer: Expose AMQP (5672), Management UI (15672)
RabbitMQ->>DockerCompose: Health check (periodic)
Assessment against linked issues
Poem
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (3)
backend/docker-compose.yml (3)
26-28: Avoid hard-codingcontainer_nameunless strictly required.Pinning
container_name: rabbitmqprevents multiple check-outs of the stack on the same host and breaksdocker compose down --volumesname scoping. Unless external scripts rely on the name, consider removing it.
37-42: Make the health-check quieter & faster.
rabbitmq-diagnostics statusis verbose and exits 0 even when some subsystems are degraded. The typical pattern is:- test: ["CMD", "rabbitmq-diagnostics", "status"] + test: ["CMD", "rabbitmq-diagnostics", "-q", "ping"]
-q pingis faster (<1 s) and returns non-zero when the node is not running.
44-47: Volume declaration indentationThe new
rabbitmq_data:key should be flush withweaviate_data:—otherwise older YAML parsers may interpret it as a child of the previous key.volumes: weaviate_data: - rabbitmq_data: + rabbitmq_data:(Only whitespace changes.)
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
backend/docker-compose.yml(1 hunks)
🧰 Additional context used
🧠 Learnings (1)
📓 Common learnings
Learnt from: smokeyScraper
PR: AOSSIE-Org/Devr.AI#72
File: backend/app/core/orchestration/queue_manager.py:48-66
Timestamp: 2025-06-08T13:27:45.522Z
Learning: The queue manager implementation in backend/app/core/orchestration/queue_manager.py is temporary and will be replaced with RabbitMQ in the future.
🔇 Additional comments (2)
backend/docker-compose.yml (2)
1-2: Specify the Compose file version explicitly.The PR description states that the file was upgraded to version 3.8, but the
version: "3.8"key is missing. While moderndocker composeCLIs infer the latest spec, olderdocker-composebinaries will fail to parse health-checks unless the version is declared.--- +version: "3.8" services:
28-33: Expose credentials only when necessary.
guest/guestis fine for local dev, but the ports are bound to the host. Anyone on the developer’s network can reach15672and5672.
Options:
- Bind to localhost only:
- - '5672:5672' - - '15672:15672' + - '127.0.0.1:5672:5672' + - '127.0.0.1:15672:15672'
- Or require env-file overrides for non-default creds.
|
Merged! @HrishikeshUchake, |
Closes #94
📝 Description
This PR introduces RabbitMQ as a first-class service in our local development Docker Compose setup. Developers can now spin up the full stack—including RabbitMQ and Weaviate—with a single:
🔧 Changes Made
Version: '3.8': Bumped Compose file format to enable healthchecks.
Added rabbitmq service under services:
Uses the official rabbitmq:3-management image
Exposes AMQP (5672) and management UI (15672) ports
Pulls credentials from environment with sensible defaults (guest/guest)
Persists broker data in a named volume (rabbitmq_data)
Defines a Docker healthcheck using rabbitmq-diagnostics status
Named volume for RabbitMQ added alongside the existing weaviate_data volume
Consistent port quoting on Weaviate service for YAML style consistency
📷 Screenshots or Visual Changes (if applicable)
✅ Checklist
Summary by CodeRabbit
New Features
Chores