> 技术文档 > Docker 安装 RabbitMQ 超详细教程_docker安装rabbitmq

Docker 安装 RabbitMQ 超详细教程_docker安装rabbitmq

  • 安装必备软件包
sudo yum install -y yum-utils \\ device-mapper-persistent-data \\ lvm2
  • 添加 Docker 仓库
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  • 使用 yum 安装 Docker CE(社区版)
sudo yum install docker-ce docker-ce-cli containerd.io
  • 启动 Docker 并 设置 开机 自启动 再用命令检查是否启动成功
sudo systemctl start dockersudo systemctl enable docker# 检查是否启动成功sudo systemctl status docker
  • 了验证 Docker 安装是否成功,可以运行一个简单的 hello-world 容器
sudo docker run hello-world

这里运行报错

Unable to find image ‘hello-world:latest’ locally
Trying to pull repository docker.io/library/hello-world …
/usr/bin/docker-current: missing signature key.
See ‘/usr/bin/docker-current run --help’.

这通常是因为默认的 Docker 镜像源访问速度较慢或不稳定所导致的。为了加速 Docker 镜像的下载和提升稳定性,解决这个问题的一种有效方法就是更换镜像源

解决方案

第一步:配置加速地址:设置registry mirror

sudo mkdir -p /etc/dockersudo tee /etc/docker/daemon.json <<-\'EOF\'{ \"registry-mirrors\": [ \"https://do.nark.eu.org\", \"https://dc.j8.work\", \"https://docker.m.daocloud.io\", \"https://dockerproxy.com\", \"https://docker.mirrors.ustc.edu.cn\", \"https://docker.nju.edu.cn\" ]}EOFsudo systemctl daemon-reloadsudo systemctl restart dockersystemctl status docker

 第二步:重启完docker之后检查registry mirror刚刚配置的加速地址是否成功

docker info

这里出现 下图所示 表明成功

接着启动rebbitmq 

# 拉取docker镜像docker pull rabbitmq:managementmkdir -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:设置默认密码。

  • 启动容器后,用一下命令查看mq是否启动成功
docker logs -f rabbitmq

关闭rabbitmq

docker stop rabbitmq# docker 加入开机自启动systemctl enable docker.service# docker 查看启动状态[root@localhost ~]# systemctl list-unit-files | grep dockerdocker.service enabled docker.socket  disabled

出现上面内容表示启动成功。

  • 访问 RabbitMQ 管理界面 

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

输入用户名密码进行登录查看

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

-- 今天到这,后续更新。。。。。。