Docker 单机安装rabbitmq

1 Docker安装

1.1 环境介绍
操作系统:Centos7.5(内核:3.10)
IP:192.168.71.115
RabbitMQ版本: 3.7.4-management
端口号:5672->5672 15672->15672
CPU限制(待定):资源的相对限制参数 --cpu-shares=0
内存限制(待定):单位可以为 b,k,m,g;最小为 4M。-m,–memory
1.2 repo环境准备
mkdir /etc/yum.repos.d/bak && mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/bak
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.cloud.tencent.com/repo/centos7_base.repo
wget -O /etc/yum.repos.d/epel.repo http://mirrors.cloud.tencent.com/repo/epel-7.repo
yum clean all && yum makecache
wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
1.3 docker安装
yum install -y docker-ce-19.03.1-3.el7
systemctl enable docker && systemctl start docker
docker -v

docker镜像存放目录: /var/lib/docker
[root@localhost ~]# docker info
Client:
Debug Mode: false

Server:
Containers: 1
Running: 1
Paused: 0
Stopped: 0
Images: 2
Server Version: 19.03.1
Storage Driver: overlay2
Backing Filesystem: xfs
Supports d_type: true
Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
Volume: local
Network: bridge host ipvlan macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 7ad184331fa3e55e52b890ea95e65ba581ae3429
runc version: dc9208a3303feef5b3839f4323d9beb36df0a9dd
init version: fec3683
Security Options:
seccomp
Profile: default
Kernel Version: 3.10.0-862.el7.x86_64
Operating System: CentOS Linux 7 (Core)
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 7.639GiB
Name: docker-redis
ID: AAS5:FK63:W5LY:55WY:OJNY:PWB5:AUQN:OQMI:6LQU:MFEB:YKGO:YE5D
Docker Root Dir: /var/lib/docker
Debug Mode: false
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
127.0.0.0/8
Live Restore Enabled: false

2 RabbitMQ安装

2.1 拉取镜像
#management为带网页管理界面
docker pull rabbitmq:3.7.4-management
2.2 Dockerfile建立vhost
[root@localhost ~]# mkdir mqtest
[root@localhost ~]# cd mqtest/
[root@localhost mqtest]# cat Dockerfile
FROM rabbitmq:3.7.4-management

#Define environment variables.
ENV RABBITMQ_USER root
ENV RABBITMQ_PASSWORD 123456
ENV VHOST_NAME vh

ADD init.sh /init.sh
RUN chmod +x /init.sh

#Define default command
#容器运行报错,注释
#CMD ["/init.sh"]
[root@localhost mqtest]# cat init.sh
#!/bin/sh

#Create Rabbitmq user
#等待rabbitmq启服务,延迟15秒执行
sleep 15 ;
rabbitmqctl add_vhost $VHOST_NAME ;
rabbitmqctl add_user $RABBITMQ_USER $RABBITMQ_PASSWORD 2>/dev/null ;
rabbitmqctl set_user_tags $RABBITMQ_USER management ;
rabbitmqctl set_permissions -p $VHOST_NAME $RABBITMQ_USER “." ".” “.*” ;

#$@ is used to pass arguments to the rabbitmq-server command.
#For example if you use it like this: docker run -d rabbitmq arg1 arg2,
#it will be as you run in the container rabbitmq-server arg1 arg2
#rabbitmq-server $@
2.3 构建新镜像
[root@localhost mqtest]# docker build -f /root/mqtest/Dockerfile -t rabbitmq:3.7.4v1 .
Sending build context to Docker daemon 5.12kB
Step 1/6 : FROM rabbitmq:3.7.4-management
—> 7d286259089f
Step 2/6 : ENV RABBITMQ_USER root
—> Running in f740093034af
Removing intermediate container f740093034af
—> ebbcf96be6f6
Step 3/6 : ENV RABBITMQ_PASSWORD 123456
—> Running in 7b855295393c
Removing intermediate container 7b855295393c
—> 1b8975168cf0
Step 4/6 : ENV VHOST_NAME vh
—> Running in fdb77f6a49b1
Removing intermediate container fdb77f6a49b1
—> 36178a5e7931
Step 5/6 : ADD init.sh /init.sh
—> 323d47d041f2
Step 6/6 : RUN chmod +x /init.sh
—> Running in 83bc3ac8a114
Removing intermediate container 83bc3ac8a114
—> 15c5691b907a
Successfully built 15c5691b907a
Successfully tagged rabbitmq:3.7.4v1

2.4 容器运行
[root@localhost mqtest]# docker run -d --hostname myrabbit --name myrabbit1 -p 15672:15672 -p 5672:5672 rabbitmq:3.7.4v1
d4c4708963fd50894445bf5792fe032a06853536f034c060b6836a82734ddda1
#Rabbitmq容器vhost设置后,暂时无法通过docker commit 导出镜像(会丢失)
[root@localhost mqtest]# docker exec -it myrabbit1 /init.sh
Adding vhost “vh” …
Adding user “root” …
Setting tags for user “root” to [management] …
Setting permissions for user “root” in vhost “vh” …
2.5 管理页面
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值