docker中构建rocketmq4.7.1全套镜像,及快速交付脚本

本文档提供了在docker中构建RocketMQ 4.7.1的完整流程,包括jdk、namesrv、broker和console控制台镜像的构建,并详细介绍了如何启动ACL认证版本的RocketMQ。此外,还包含了一个用于研发测试环境快速交付的脚本。
摘要由CSDN通过智能技术生成

docker中构建rocketmq4.7.1全套镜像,及快速交付脚本

日常工作中常用 的脚本,构建rocketmq4.7.1及其控制台镜像,适用于研发测试环境快速交付多套rocketmq

1、构建jdk镜像

构建一个jdk基础镜像,提前下载好oracle jdk1.8即可

FROM daocloud.io/centos:7

#创建者
MAINTAINER mkpid

#复制jdk到镜像
COPY jdk1.8 /usr/local/jdk/

#设置环境变量
ENV     JAVA_HOME    /usr/local/jdk
ENV     JRE_HOME     /usr/local/jdk/jre
ENV     CLASSPATH    .:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
ENV     PATH         $PATH:$JAVA_HOME/bin:$JRE_HOME/bin
RUN     chmod +x     /usr/local/jdk/bin/* && chmod +x /usr/local/jdk/jre/bin/*
#设置时区
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone

#设置工作目录
WORKDIR /root/

2、构建namesrv镜像

FROM jdk:1.8

#创建者
MAINTAINER mkpid
#mq版本
ENV ROCKETMQ_VERSION 4.7.1

ENV ROCKETMQ_HOME /home/rocketmq

ENV JAVA_OPT "-Duser.home=/home/rocketmq"

ADD rocketmq-all-4.7.1-bin-release /home/rocketmq/

WORKDIR ${
   ROCKETMQ_HOME}

RUN mkdir -p /home/rocketmq/logs /home/rocketmq/store

RUN cd ${
   ROCKETMQ_HOME}/bin \
    && sed -i '70s/^/#/' runserver.sh \
    && sed -i '74,77s/^/#/' runserver.sh \
    && sed -i 's#-Xms[0-9]\+[gm]#-Xms512m#'
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Docker获取RocketMQ镜像,可以按照以下步骤操作: 1. 打开终端并运行Docker。 2. 运行以下命令以获取最新版本的RocketMQ镜像: ``` docker pull rocketmqinc/rocketmq:latest ``` 如果您需要特定版本的RocketMQ,请将“latest”更改为所需的版本号。 3. 等待下载完成后,您可以使用以下命令查看已下载的镜像列表: ``` docker images ``` 在这个列表,您应该能够看到刚刚下载的RocketMQ镜像。 要在Docker部署RocketMQ,可以按照以下步骤操作: 1. 创建一个名为“rocketmq”的网络: ``` docker network create rocketmq ``` 2. 运行一个名为“namesrv”的RocketMQ NameServer容器: ``` docker run --name namesrv --network rocketmq -e "MAX_POSSIBLE_HEAP=100000000" -p 9876:9876 rocketmqinc/rocketmq:latest sh mqnamesrv ``` 3. 运行一个名为“broker”的RocketMQ Broker容器: ``` docker run --name broker --network rocketmq -e "NAMESRV_ADDR=namesrv:9876" -e "MAX_POSSIBLE_HEAP=2000000000" -p 10911:10911 -p 10909:10909 rocketmqinc/rocketmq:latest sh mqbroker -c /opt/rocketmq-4.9.0/conf/broker.conf ``` 在这个命令,“NAMESRV_ADDR”环境变量设置为NameServer的地址和端口,而“MAX_POSSIBLE_HEAP”环境变量设置为Broker容器最大可用堆内存大小。请注意,这里我们使用了一个特定版本的RocketMQ(4.9.0),您应该将此命令的版本号更改为您下载的版本。 4. 现在,您应该能够通过访问“http://localhost:9876”来访问NameServer的控制台,并通过访问“http://localhost:10909”来访问Broker的控制台。 请注意,这些命令只是一个简单的示例,您可以根据您的需求进行修改。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值