docker rocketmq 配置账号密码
时间: 2023-07-06 22:30:15 浏览: 291
要在 Docker 中配置 RocketMQ 账号密码,需要进行以下步骤:
1. 创建一个自定义的配置文件,在该文件中添加以下内容:
```
brokerClusterName=rocketmq-cluster
brokerName=rocketmq-broker
brokerId=0
deleteWhen=04
fileReservedTime=48
brokerRole=ASYNC_MASTER
flushDiskType=ASYNC_FLUSH
storePathRootDir=/opt/rocketmq/store
storePathCommitLog=/opt/rocketmq/store/commitlog
autoCreateTopicEnable=true
# 开启身份验证功能
brokerAuthenticate=true
# 使用简单文本方式进行身份验证
brokerAuthMethod=SimplePlaintext
# 配置用户名和密码
users=your_username=your_password
# 配置访问控制列表,这里允许该用户对所有主题进行读写操作
acls=your_username={topicPerm={read=*:*,write=*:*}}
```
2. 将上述配置文件保存为 custom-broker.conf 文件。
3. 启动 RocketMQ Broker 时,使用 -c 参数指定 custom-broker.conf 文件的路径,例如:
```
docker run -d \
-e "JAVA_OPTS=-Duser.home=/opt" \
-p 9876:9876 \
-v /path/to/custom-broker.conf:/opt/rocketmq/conf/broker.conf \
--name rocketmq-broker \
rocketmqinc/rocketmq:4.9.1 sh mqbroker -c /opt/rocketmq/conf/broker.conf
```
4. 将 your_username 和 your_password 分别替换为你要配置的用户名和密码。
5. 启动 RocketMQ Broker 容器后,就可以使用用户名和密码进行身份验证了。
注意:以上命令中的 -e "JAVA_OPTS=-Duser.home=/opt" 参数是为了解决容器内无法找到用户 home 目录的问题,如果你的容器已经设置了用户 home 目录,可以不用添加该参数。
阅读全文