docker安装rabbitmq一些命令

配置docker镜像加速器

  # 编辑Docker配置
  sudo vim /etc/docker/daemon.json

  # 添加以下内容(使用国内镜像源)
  {
    "registry-mirrors": [
      "https://docker.mirrors.ustc.edu.cn",
      "https://hub-mirror.c.163.com"
    ]
  }

  # 重启Docker服务
  sudo systemctl restart docker

一些常用命令

    # 拉取带management插件的3.12版本(推荐)
    docker pull rabbitmq:3.12-management
    # 新建目录
    mkdir -p /var/lib/rabbitmq
    # 加权限
    chmod 777 /var/lib/rabbitmq
    # 运行镜像
    docker run -d \
    --name rabbitmq \
    --hostname  ap201 \
    -p 5672:5672 \
    -p 15672:15672 \
    -v rabbitmq_data:/var/lib/rabbitmq \
    -e RABBITMQ_DEFAULT_USER=admin \
    -e RABBITMQ_DEFAULT_PASS=123456 \
    --restart=unless-stopped \
    rabbitmq:3.12-management

    # 1. 查看容器是否运行
    docker ps | grep rabbitmq
    # 等待几秒钟后查看日志
    docker logs --tail 30 rabbitmq
    # 3. 检查端口监听
    sudo netstat -tlnp | grep -E '5672|15672'
    # 4. 测试 Web 界面
    curl -I http://localhost:15672

添加新用户

    # 进入容器
    docker exec -it rabbitmq bash
    # 查看用户列表及其权限标签(tags)
    rabbitmqctl list_users
    # 创建新用户,例如用户名为 testadmin,密码为 YourPass
    rabbitmqctl add_user testadmin YourPass
    # 设置为管理员角色
    rabbitmqctl set_user_tags testadmin administrator
    # 授予所有权限
    rabbitmqctl set_permissions -p / testadmin ".*" ".*" ".*"
    # 退出容器
    exit

一些常用处理命令

  # 停止所有包含rabbitmq的容器
  docker stop $(docker ps -a | grep rabbitmq | awk '{print $1}') 2>/dev/null

  # 删除所有包含rabbitmq的容器
  docker rm $(docker ps -a | grep rabbitmq | awk '{print $1}') 2>/dev/null

  # 删除数据卷(会清空所有数据)
  docker volume rm rabbitmq_data

  # 进入容器查看插件列表
  docker exec -it rabbitmq bash

  # 列出所有已启用的插件
  rabbitmq-plugins list -e

  # 你应该能看到类似输出:
  # [E*] rabbitmq_management       3.x.x
  # [E*] rabbitmq_management_agent 3.x.x
  # [E*] rabbitmq_web_dispatch     3.x.x

  # 在现有容器中启用管理插件
  # 进入容器
  docker exec -it rabbitmq bash

  # 启用管理插件
  rabbitmq-plugins enable rabbitmq_management

  # 退出容器
  exit

  # 重启容器使配置生效
  docker restart rabbitmq

  # 等待几秒钟后查看日志
  docker logs --tail 30 rabbitmq

  # 查看日志,确认插件加载成功
  docker logs rabbitmq | grep -A 5 "Management plugin"

  # 应该看到类似:
  # Starting RabbitMQ 3.x.x on Erlang 25.x
  # Management plugin: HTTP (non-TLS) listener started on port 15672
  # Completed with plugins: [rabbitmq_management...]

验证安装是否成功

  # 1. 检查镜像版本
  docker images | grep rabbitmq
  # 应该显示 rabbitmq 3.12-management 或 rabbitmq 3.12

  # 2. 检查容器状态
  docker ps --format "table {{.Names}}\t{{.Image}}\t{{.Status}}" | grep rabbitmq
  # 应该显示 Up 状态

  # 3. 检查端口监听
  sudo netstat -tlnp | grep -E '5672|15672'

  # 4. 测试Web界面
  curl -I http://localhost:15672 2>/dev/null | head -n 1
  # 应该返回 HTTP/1.1 200 OK 或 302 Found
posted @ 2026-03-01 12:33  是17阿哥呀  阅读(1)  评论(0)    收藏  举报