Skip to content

feat: Move docker-compose file to the repo and use S3WAL mode by default #2467

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

Merged
merged 6 commits into from
Apr 30, 2025

Conversation

sanks011
Copy link
Contributor

@sanks011 sanks011 commented Apr 29, 2025

Description

This PR addresses issue #2456 by moving the Docker Compose file from AutoMQ's CDN to the repository and configuring it to use MinIO with S3WAL mode enabled by default.

Changes

  • Added docker-compose.yaml to the root of the repository
  • Replaced LocalStack with MinIO as the S3-compatible storage backend
  • Enabled S3WAL mode by default for improved performance
  • Updated README.md with Docker Compose quick start instructions
  • Added documentation for running AutoMQ locally using Docker

Key Benefits

  1. Self-contained repository: No external downloads required, simplifies onboarding
  2. Better developer experience: MinIO is widely used and easier to work with
  3. Improved performance: S3WAL mode provides better durability and throughput
  4. Improved documentation: New users can start with a one-step Docker Compose setup

Summary of Testing Strategy

  • Local Docker Compose test: Successfully brought up the full stack using the new compose file
  • MinIO verification: Accessed MinIO UI and verified buckets and file operations
  • Broker testing: Brokers launched successfully with S3WAL mode enabled

Reference

This PR replaces the current setup:

curl https://download.automq.com/community_edition/standalone_deployment/install_run.sh | bash

With a repository-contained solution using docker-compose.yaml directly.

Fixes #2456


Committer Checklist (excluded from commit message)

  • Verify design and implementation
  • Verify test coverage and CI build status
  • Verify documentation (including upgrade notes)

@CLAassistant
Copy link

CLAassistant commented Apr 29, 2025

CLA assistant check
All committers have signed the CLA.

@sanks011 sanks011 changed the title Move docker-compose file to the repo and use S3WAL mode by default feat: Move docker-compose file to the repo and use S3WAL mode by default Apr 29, 2025
@daniel-y
Copy link
Contributor

Cool, thanks for your contribution, I will review on it later.

@daniel-y
Copy link
Contributor

Hi, @sanks011 , I assume you're familiar with the setup of Kafka or AutoMQ. I apologize for not providing more details earlier. Currently, the Docker Compose starts 1 controller and 2 brokers, which seems unusual and not ideal. Here’s a possible solution:

  1. By default, start a single server node with MinIO for a quick start.
  2. Provide another compose file to support deploying a three-server cluster with MinIO.

I know this is beyond the scope of the current issue, so it's fine to maintain the current setup, and we can review it later. However, if you're okay with it, adopting the above solution would be appreciated.

@daniel-y
Copy link
Contributor

Great, I'll merge it and maybe add my polish after your pull request.

@daniel-y daniel-y merged commit 9c66bc8 into AutoMQ:main Apr 30, 2025
6 checks passed
@sanks011
Copy link
Contributor Author

Great, I'll merge it and maybe add my polish after your pull request.

Thank You!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Good first issue] Move docker-compose file to the repo, and use the S3WAL mode by default
3 participants