自学内容网 自学内容网

centos docker 安装 rabbitmq

安装docker

1.更新现有的软件包

首先,确保您的系统是最新的,可以通过运行以下命令来实现:

sudo yum update -y

2.移除旧版本的Docker

如果您之前安装过Docker,可能需要先卸载旧版本。使用以下命令来卸载旧版本的Docker:

sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-selinux \
                  docker-engine-selinux \
                  docker-engine

3.安装必要的依赖

安装一些必要的工具,如yum-utils,这将帮助我们添加Docker的官方仓库:

sudo yum install -y yum-utils

4.选择国内的源地址

阿里云

sudo yum-config-manager \
    --add-repo \
    https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

清华大学源

 sudo yum-config-manager \
    --add-repo \
    https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo

5.安装 Docker Engine-Community

安装最新版本的 Docker Engine-Community 和 containerd,或者转到下一步安装特定版本:

sudo yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin

6. 启动Docker服务

安装完成后,启动Docker服务并设置为开机自启:

sudo systemctl start docker
sudo systemctl enable docker

安装rabbitmq

1.安装


# 拉取docker镜像
docker pull rabbitmq:management
mkdir -p /usr/local/docker/rabbitmq

docker run -id --name=rabbitmq -v /usr/local/docker/rabbitmq:/var/lib/rabbitmq -p 15672:15672 -p 5672:5672 -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin rabbitmq:management

在这条命令中,我们做了以下配置:

-id:以交互模式启动容器并在后台运行。
--name=rabbitmq:为容器指定一个名称。
-v /usr/local/docker/rabbitmq:/var/lib/rabbitmq:将主机目录挂载到容器内的 /var/lib/rabbitmq,用于持久化数据。
-p 15672:15672:映射 RabbitMQ 管理页面端口。
-p 5672:5672:映射 RabbitMQ 消息接收端口。
-e RABBITMQ_DEFAULT_USER=admin:设置默认用户名。
-e RABBITMQ_DEFAULT_PASS=admin:设置默认密码。 

2.查看容器日志

启动容器后,可以使用以下命令查看容器日志,确保 RabbitMQ 正常启动:

docker logs -f rabbitmq

3.访问 RabbitMQ 管理界面

在浏览器中访问 http://<你的服务器地址>:15672,使用之前设置的用户名和密码(admin 和 admin)登录,即可访问 RabbitMQ 的管理界面。

4.配置说明

15672端口:RabbitMQ 的管理页面端口。
5672端口:RabbitMQ 的消息接收端口。
RABBITMQ_DEFAULT_USER 环境变量:指定 RabbitMQ 的用户名。
RABBITMQ_DEFAULT_PASS 环境变量:指定 RabbitMQ 的密码。


5.环境变量配置

RabbitMQ 容器通过指定环境变量的方式进行配置,这比修改配置文件便捷得多。以下是一些常用的环境变量:

RABBITMQ_DEFAULT_USER:默认用户名。
RABBITMQ_DEFAULT_PASS:默认密码。
RABBITMQ_ERLANG_COOKIE:Erlang 集群 cookie。
RABBITMQ_NODENAME:节点名称。

更多环境变量的详细信息可以参考 RabbitMQ 官方文档

6.持久化数据

为了确保 RabbitMQ 的数据在容器重启或删除后不会丢失,我们使用了 Docker 的卷(volume)功能。通过 -v /usr/local/docker/rabbitmq:/var/lib/rabbitmq 参数,我们将主机目录挂载到容器内的 /var/lib/rabbitmq,实现数据持久化。

7.备份与恢复

为了防止数据丢失,定期备份 RabbitMQ 的数据是非常重要的。可以使用以下命令备份数据:

docker exec rabbitmq tar czf /backup/rabbitmq_backup.tar.gz /var/lib/rabbitmq

要恢复数据,可以使用以下命令:

docker exec rabbitmq tar xzf /backup/rabbitmq_backup.tar.gz -C /

8.集群配置

RabbitMQ 支持集群配置,可以通过以下步骤实现:

启动多个 RabbitMQ 容器,并确保它们可以相互通信。
在每个节点上设置相同的 RABBITMQ_ERLANG_COOKIE。
使用 rabbitmqctl 命令将节点加入集群:

docker exec rabbitmq1 rabbitmqctl stop_app
docker exec rabbitmq1 rabbitmqctl join_cluster rabbit@rabbitmq2
docker exec rabbitmq1 rabbitmqctl start_app

9.性能优化

为了提高 RabbitMQ 的性能,可以考虑以下优化措施:

调整 vm_memory_high_watermark 参数,控制内存使用。
使用 rabbitmq_management 插件监控性能。
调整 disk_free_limit 参数,确保磁盘空间充足。
 

10.常见问题排查

在使用 RabbitMQ 时,可能会遇到一些常见问题。以下是一些排查方法:

无法访问管理界面:检查 15672 端口是否开放,确保防火墙未阻止该端口。
消息堆积:检查消费者是否正常工作,确保消息被及时处理。
内存不足:调整 vm_memory_high_watermark 参数,增加内存限制。


————————————————

                            版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
                        
原文链接:https://blog.csdn.net/Li_WenZhang/article/details/141181632


原文地址:https://blog.csdn.net/liyongbing1122/article/details/143587739

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!