目录

RabbitMQ容器部署

RabbitMQ容器部署

1.RabbitMQ下载

https://i-blog.csdnimg.cn/direct/319f77c0d4fb403cb67896476e86ccf0.png

1.1 配置Docker

(base) [root@sonarqube19 ~]# cat /etc/docker/daemon.json
{
  "registry-mirrors": [
     "https://hub.iyuu.cn",
     "https://docker.1panel.live"
  ]
}

# 配置完毕后,重启Docker服务
systemctl restart docker

1.1 下载RabbitMQ

# 下载4.0社区版本
docker pull rabbitmq:4.0-management

2.RabbitMQ部署

2.1 创建目录

# 创建目录
mkdir -p /opt/rabbitmq/{conf,data,log}
# 授权文件夹
chmod -R 777 /opt/rabbitmq/{conf,data,log}

https://i-blog.csdnimg.cn/direct/9cd17303560643b19f9ea855dbf10d37.png

2.2 启动RabbitMQ

docker run \
	-it \						# 交互式操作
	-d \						# 在后台运行容器
	-p 5672:5672 \				# AMQP协议端口
	-p 15672:15672 \			# 管理界面端口
	--init \					# 在容器中运行一个初始化进程
	--memory 2G	\				# 容器内存
	--restart=always \			# 容器失败重启
	--privileged=true \			# 获取root权限
	--name rabbitmq \			# 设置容器名称
	--hostname sonarqube19 \	# 设置容器的主机名
	-e RABBITMQ_DEFAULT_USER=rabbitmq \			# 指定默认的 RabbitMQ 用户名
	-e RABBITMQ_DEFAULT_PASS=rabbitmq@123 \		# 指定默认的 RabbitMQ 密码
	-v /opt/rabbitmq/data:/var/lib/rabbitmq \	# 数据持久化
	-v /opt/rabbitmq/conf:/etc/rabbitmq \		# 配置文件持久化
	-v /opt/rabbitmq/log:/var/log/rabbitmq \	# 日志文件持久化
	rabbitmq:4.0-management		# 指定容器镜像


# 后续可以添加容器健康检查参数
--health-cmd "curl http://localhost:15672 || exit 1" \	# 设置容器健康检查
--health-interval 5s \		# 两次健康检查的间隔,默认为30秒
--health-timeout 3s \		# 健康检查命令运行超时时间,如果超过这个时间,本次健康检查就被视为失败,默认30秒
--health-retries 12	\		# 当连续失败指定次数后,则将容器状态视为 unhealthy,默认3次

https://i-blog.csdnimg.cn/direct/9f025c6bc8724c90a3daa0698ff6fa2b.png

2.3 开启控制台管理

sudo docker exec -it rabbitmq rabbitmq-plugins enable rabbitmq_management

Enabling plugins on node rabbit@sonarqube19:
rabbitmq_management
The following plugins have been configured:
  rabbitmq_management
  rabbitmq_management_agent
  rabbitmq_web_dispatch
Applying plugin configuration to rabbit@sonarqube19...
The following plugins have been enabled:
  rabbitmq_management
  rabbitmq_management_agent
  rabbitmq_web_dispatch

started 3 plugins.

2.4 查看日志

docker logs rabbitmq

https://i-blog.csdnimg.cn/direct/e5df43a5a5ac413cad5c5c66996dd9ed.png

2.5 查看用户

# 如果容器启动的时候,没有设置默认RabbitMQ的用户名和密码,需要如下操作
sudo docker exec -it rabbitmq rabbitmqctl list_users
# Listing users ...
# user    tags
# rabbitmq        [administrator]

2.6 删除guest用户

# 如果容器启动的时候,没有设置默认RabbitMQ的用户名和密码,需要如下操作
sudo docker exec -it rabbitmq rabbitmqctl delete_user guest
# Deleting user "guest" ...

2.7 创建管理员账号

# 如果容器启动的时候,没有设置默认RabbitMQ的用户名和密码,需要如下操作
sudo docker exec -it rabbitmq rabbitmqctl add_user rabbitmq rabbitmq@123

2.8 授权管理员权限

# 如果容器启动的时候,没有设置默认RabbitMQ的用户名和密码,需要如下操作
sudo docker exec -it rabbitmq rabbitmqctl set_user_tags rabbitmq administrator
# Setting tags for user "rabbitmq" to [administrator] ...

3.访问

http://192.168.120.19:15672
# 用户名:rabbitmq
# 密码:rabbitmq@123

https://i-blog.csdnimg.cn/direct/26cbd888e45047b48e12d487638ee034.png

https://i-blog.csdnimg.cn/direct/1d4709293ac1408aaa8fb9a94dee13d1.png

参考: