Skip to content
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

feat: Adapted to RocketMQ 5.x docker compose #101

Merged
merged 1 commit into from
Feb 21, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 11 additions & 2 deletions stage.sh
Original file line number Diff line number Diff line change
Expand Up @@ -46,9 +46,18 @@ fi
echo "mkdir $STAGE_DIR/$version"
mkdir -p "$STAGE_DIR/$version"

cp -rf "$CURRENT_DIR/templates/" "$STAGE_DIR/$version"
cp -rf "$CURRENT_DIR/templates" "$STAGE_DIR/$version"

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

这行会兼容mac和linux的cp命令,可以解决readme中提到的手动处理的问题。


echo "staged templates into folder $STAGE_DIR/$version"

# Replace string "ROCKETMQ_VERSION" with real version in all files under $STAGE_DIR/$version
find "$STAGE_DIR/$version" -type f | xargs perl -pi -e "s/ROCKETMQ_VERSION/${version}/g"
find "$STAGE_DIR/$version" -type f | xargs perl -pi -e "s/ROCKETMQ_VERSION/${version}/g"


if [[ "${version}" > "5.0.0" ]]; then
Copy link

@leizhiyuan leizhiyuan Feb 21, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

rmq5 也可以不使用 proxy,单独部署broker。这里后续相当于只要5.x以上的,docker compose。就有proxy对吧。用户根据自己的需求,连接proxy/ns 来实现不同的case

cp $STAGE_DIR/$version/templates/docker-compose/rmq5-docker-compose.yml $STAGE_DIR/$version/templates/docker-compose/docker-compose.yml
else
cp $STAGE_DIR/$version/templates/docker-compose/rmq4-docker-compose.yml $STAGE_DIR/$version/templates/docker-compose/docker-compose.yml
fi

rm $STAGE_DIR/$version/templates/docker-compose/rmq4-docker-compose.yml $STAGE_DIR/$version/templates/docker-compose/rmq5-docker-compose.yml
3 changes: 3 additions & 0 deletions templates/docker-compose/proxy/conf/rmq-proxy.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"rocketMQClusterName": "DefaultCluster"
}
69 changes: 69 additions & 0 deletions templates/docker-compose/rmq5-docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
version: '2'
services:
#Service for nameserver
namesrv:
image: apache/rocketmq:ROCKETMQ_VERSION
container_name: rmqnamesrv
ports:
- 9876:9876
volumes:
- ./data/namesrv/logs:/home/rocketmq/logs
command: sh mqnamesrv

#Service for broker
broker:
image: apache/rocketmq:ROCKETMQ_VERSION
container_name: rmqbroker
links:
- namesrv
ports:
- 10909:10909
- 10911:10911
- 10912:10912
environment:
- NAMESRV_ADDR=namesrv:9876
volumes:
- ./data/broker/logs:/home/rocketmq/logs
- ./data/broker/store:/home/rocketmq/store
- ./data/broker/conf/broker.conf:/opt/rocketmq-ROCKETMQ_VERSION/conf/broker.conf
command: sh mqbroker -c /opt/rocketmq-ROCKETMQ_VERSION/conf/broker.conf

#Service for another broker -- broker1
broker1:
image: apache/rocketmq:ROCKETMQ_VERSION
container_name: rmqbroker-b
links:
- namesrv
ports:
- 10929:10909
- 10931:10911
- 10932:10912
environment:
- NAMESRV_ADDR=namesrv:9876
volumes:
- ./data1/broker/logs:/home/rocketmq/logs
- ./data1/broker/store:/home/rocketmq/store
- ./data1/broker/conf/broker.conf:/opt/rocketmq-ROCKETMQ_VERSION/conf/broker.conf
command: sh mqbroker -c /opt/rocketmq-ROCKETMQ_VERSION/conf/broker.conf

#Service for proxy
proxy:
image: apache/rocketmq:ROCKETMQ_VERSION
container_name: rmqproxy
links:
- namesrv
- broker
- broker1
depends_on:
- broker
- broker1
ports:
- 8080:8080
- 8081:8081
zzjcool marked this conversation as resolved.
Show resolved Hide resolved
restart: on-failure
environment:
- NAMESRV_ADDR=namesrv:9876
volumes:
- ./proxy/logs:/home/rocketmq/logs
- ./proxy/conf/rmq-proxy.json:/opt/rocketmq-ROCKETMQ_VERSION/conf/rmq-proxy.json
command: sh mqproxy -pc /opt/rocketmq-ROCKETMQ_VERSION/conf/rmq-proxy.json
2 changes: 1 addition & 1 deletion templates/play-docker-compose.sh
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ fi

prepare_dir()
{
dirs=("docker-compose/data/namesrv/logs" "docker-compose/data/broker/logs" "docker-compose/data/broker/store" "docker-compose/data1/broker/logs" "docker-compose/data1/broker/store")
dirs=("docker-compose/data/namesrv/logs" "docker-compose/data/broker/logs" "docker-compose/data/broker/store" "docker-compose/data1/broker/logs" "docker-compose/data1/broker/store" "docker-compose/proxy/logs")

for dir in ${dirs[@]}
do
Expand Down