啟動rabbitmq
docker run -d --name myrabbitmq -p 5672:5672 -p 15672:15672 rabbitmq:3.7-management
查看已經啟動的容器
root@ecs-s6-medium-2-linux-20191230105810:~# docker ps
CONTAINER ID IMAGE COMMAND CREATED NAMES
db7c0ab13d8a rabbitmq:3-management "docker-entrypoint.s…" About a min72/tcp, 0.0.0.0:15672->15672/tcp rabbitmq
docker查看所有,已經運行 和 沒有運行的容器:
root@ecs-s6-medium-2-linux-20191230105810:~# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
efb63b8f5654 rabbitmq:3.7-management "docker-entrypoint.s…" 4 minutes ago Exited (0) 2 minutes ago
進入容器
root@ecs-s6-medium-2-linux-20191230105810:~# docker exec -it db7c0ab13d8a /bin/bash
root@testrabbit:/#
root@testrabbit:/# rabbitmqctl
查看隊列
root@testrabbit:/# rabbitmqctl list_queues
Timeout: 60.0 seconds ...
Listing queues for vhost / ...
給rabbitmq設置用戶和密碼后,需要重啟rabbitmq服務
root@testrabbit:/# rabbitmqctl add_user test 123456
Adding user "test" ...
root@testrabbit:/# rabbitmqctl set_user_tags test administrator
Setting tags for user "test" to [administrator] ...
root@testrabbit:/# rabbitmqctl set_permissions -p '/' test '.' '.' '.'
Setting permissions for user "test" in vhost "/" ...
執行了rabbimqctl stop后整個容器都停止了,所以要重啟rabbitmq就重啟容器就行了;重新啟動過程如下:
^Croot@ecs-s6-medium-2-linux-20191230105810:~# docker run -d -p 5672:5672 -p 15672:15672 rabbitmq:3.7-management
dc5317126d0d48b46bfceba64e654b5e5647659be9c514fa7138d23e62f705dc
root@ecs-s6-medium-2-linux-20191230105810:~# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
dc5317126d0d rabbitmq:3.7-management "docker-entrypoint.s…" 8 seconds ago Up 8 seconds 4369/tcp, 5671/tcp, 0.0.0.0:5672->5672/tcp, 15671/tcp, 25672/tcp, 0.0.0.0:15672->15672/tcp friendly_davinci
root@ecs-s6-medium-2-linux-20191230105810:~# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
dc5317126d0d rabbitmq:3.7-management "docker-entrypoint.s…" 8 seconds ago Up 8 seconds 4369/tcp, 5671/tcp, 0.0.0.0:5672->5672/tcp, 15671/tcp, 25672/tcp, 0.0.0.0:15672->15672/tcp friendly_davinci
root@ecs-s6-medium-2-linux-20191230105810:~# docker exec -t dc5317126d0d /bin/bash
root@dc5317126d0d:/# rabbitmq
設置用戶test好像沒有設置成功, python pika連接信道,可以用默認的用戶名密碼 guest
列出消息隊列中全部的隊列和交換機
root@dc5317126d0d:/# rabbitmqctl list_queues
Timeout: 60.0 seconds ...
Listing queues for vhost / ...
root@dc5317126d0d:/#
root@dc5317126d0d:/#
root@dc5317126d0d:/# rabbitmqctl list_exchanges
Listing exchanges for vhost / ...
name type
amq.rabbitmq.trace topic
amq.direct direct
amq.headers headers
amq.topic topic
amq.fanout fanout
amq.match headers
direct
hello-exchange direct