【部署】【一】制作 RocketMQ 的 Docker 镜像

查看 RocketMQ 系列文章目录

环境准备和最终目标

  • 准备一:Linux 主机,笔者用的是阿里云 ECS,预装 Centos7.4 Docker18.03.1-ce
  • 准备二:基础 java 8 Docker 镜像,镜像中预装 unzip 解压工具
  • 目标一:在一台宿主机部署一个 Namesrv Container 和一个 Brocker Container
  • 目标二:通过管理命令实现对 RocketMQ 的运维管理
  • 目标三:运行官方写好的 demo 程序,实现 MQ 消息的收发

准备文件

目录
├── rocketmq
│   ├── scripts
│   │   ├── mqbroker-customize
│   │   ├── mqnamesrv-customize
│   │   ├── runbroker-customize.sh
│   │   ├── runserver-customize.sh
│   ├── Dockerfile
rocketmq/scripts/mqbroker-customize
#!/bin/bash
#
# Program:
#     this program customize RocketMQ mqbroker, user can add jvm param with "--jvm"
# History:
# 2019/01/23    Zhaofeng.L<8362549@qq.com>    v1.0
#

if [ -z "$ROCKETMQ_HOME" ] ; then
  ## resolve links - $0 may be a link to maven's home
  PRG="$0"

  # need this for relative symlinks
  while [ -h "$PRG" ] ; do
    ls=`ls -ld "$PRG"`
    link=`expr "$ls" : '.*-> \(.*\)$'`
    if expr "$link" : '/.*' > /dev/null; then
      PRG="$link"
    else
      PRG="`dirname "$PRG"`/$link"
    fi
  done

  saveddir=`pwd`

  ROCKETMQ_HOME=`dirname "$PRG"`/..

  # make it fully qualified
  ROCKETMQ_HOME=`cd "$ROCKETMQ_HOME" && pwd`

  cd "$saveddir"
fi

export ROCKETMQ_HOME

if [ -z "$1" ]||[ "$1" != "--jvm" ]; then
    sh ${ROCKETMQ_HOME}/bin/runbroker.sh \
     org.apache.rocketmq.broker.BrokerStartup \
     -c /opt/rocketmq/conf/broker.conf $@
else
    JVM_KEY="$1"
    JVM_VALUE="$2"
    shift 2
    sh ${ROCKETMQ_HOME}/bin/runbroker.sh ${JVM_KEY} "${JVM_VALUE}" \ 
     org.apache.rocketmq.broker.BrokerStartup \
     -c /opt/rocketmq/conf/broker.conf $@
fi
rocketmq/scripts/mqnamesrv-customize
#!/bin/sh
<
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值