Docker安装Rabbitmq并挂载宿主机数据目录
docker安装rabbitmq并挂载
·
1、拉取RabbitMQ镜像
docker pull rabbitmq
docker pull rabbitmq:management
需要注意的是,docker pull rabbitmq (镜像未配有控制台),docker pull rabbitmq:management (镜像配有控制台)。
2、创建rabbitmq相关挂载目录
mkdir -p docker-work/rabbitmq/{data,conf,log}
创建完成之后要特别注意,所创建文件的权限 都设置成777 否则在启动容器的时候容易失败
chmod -R 777 docker-work/rabbitmq # 授权
3、启动容器命令
docker run -d --name rabbitmq --hostname=rabbitmqhost \
-e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin123456 \
-e RABBITMQ_DEFAULT_VHOST=my_vhost \
-v /docker-work/rabbitmq/data:/var/lib/rabbitmq -v /docker-work/rabbitmq/conf:/etc/rabbitmq -v /docker-work/rabbitmq/log:/var/log/rabbitmq \
-p 5672:5672 -p 15672:15672 \
rabbitmq:management
参数说明:
–restart=always :表示随着Docker容器重启(~~可加可不加~~ )
-e :指定环境变量 RABBITMQ_DEFAULT_VHOST:默认虚拟机名;RABBITMQ_DEFAULT_USER:默认的用户名;RABBITMQ_DEFAULT_PASS:默认用户名的密码,rabbitmq默认账号和密码是guest
--hostname :主机名 (~~可加可不加~~ )
-p :端口映射
-v :文件挂载
-d :表示后台运行
–name rabbitmq :表示启动后的容器实例名称为rabbitmq
介绍:
如果用的是阿里云的话,顺便开放下这两个端口,不然没法访问
启动失败问题解决:
①使用【docker ps -a】命令获取容器ID,图中标红部分
②使用【docker logs 容器ID】命令,获取错误日志
如果错误信息是图上标红部分,则
问题原因:
.erlang.cookie 权限不够
解决方法:
修改文件挂载为 -v /docker-work/rabbitmq/data:/var/lib/rabbitmq/mnesia #数据文件挂载
最后放一下我亲测启动命令
docker run -d --privileged=true --name rabbitmq \
-e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin123456 \
-v /docker-work/rabbitmq/data:/var/lib/rabbitmq/mnesia -v /docker-work/rabbitmq/conf:/etc/rabbitmq -v /docker-work/rabbitmq/log:/var/log/rabbitmq \
-p 5672:5672 -p 15672:15672 \
rabbitmq:management
3.1、设置主机名的作用 (–hostname=rabbitmqhost)
RabbitMQ的一个重要注意事项是它根据所谓的 “节点名称” 存储数据,默认为主机名
4.2 设置虚拟机名(-e RABBITMQ_DEFAULT_VHOST=my_vhost)的作用
其他
开启web页面
1、docker ps 查看容器是否运行成功
2、开启插件:首先使用命令进入容器
docker exec -it myrabbit bash
myrabbit指自己启动容器时定义的名称
进入后执行
rabbitmq-plugins enable rabbitmq_management
3、添加用户
1.首先进入容器 docker exec -it 容器ID /bin/bash
2.创建用户 rabbitmqctl add_user admin admin123
3.给用户授权角色 rabbitmqctl set_user_tags admin administrator
4.给用户添加权限 rabbitmqctl set_permissions -p / admin “." ".” “.*”
不用重启服务,直接访问即可。
更多推荐
已为社区贡献3条内容
所有评论(0)