镜像

rocketmq-mqtt镜像icon-default.png?t=N7T8http://链接:https://pan.baidu.com/s/17VNiCAUytpeDq7iU4SURUw?pwd=zlyhdocker 安装 rocketmq-mqtt-CSDN博客

Dockerfile

FROM centos:7

# 安装必要的软件
RUN yum -y install wget java-1.8.0-openjdk-devel && \
    yum clean all && \
    rm -rf /var/cache/yum/*

# 设置工作目录
WORKDIR /usr/local/rocketmq-mqtt

# 复制解压包目录下的文件到镜像中
COPY rocketmq-mqtt-1.0.2-SNAPSHOT /usr/local/rocketmq-mqtt

# 设置环境变量
ENV JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
ENV PATH=$PATH:$JAVA_HOME/bin

# 设置脚本权限
RUN chmod +x /usr/local/rocketmq-mqtt/bin/meta.sh
RUN chmod +x /usr/local/rocketmq-mqtt/bin/mqtt.sh
RUN chmod +x /usr/local/rocketmq-mqtt/bin/start.sh
 
CMD sh /usr/local/rocketmq-mqtt/bin/start.sh

# 暴露端口
EXPOSE 25000 1884

创建start.sh 运行 meta.sh与mqtt.sh 服务,内容如下

 #!/bin/ba
sh  /usr/local/rocketmq-mqtt/bin/meta.sh start &
sh /usr/local/rocketmq-mqtt/bin/mqtt.sh start

# 创建前台运行进程,避免docker 容器启动退出
touch /usr/local/a
tail -f /usr/local/a

构建镜像

#在Dockerfile同路径下执行
docker build -t rocketmq-mqtt:1.0.2 .

创建容器实例

# 创建文件挂载目录
mkdir -p /app/rocketmq-mqtt

#创建临时容器实例
docker run -d -p 25000:25000 -p 1884:1884 --name rocketmq-mqtt rocketmq-mqtt:1.0.2

# 将容器中的配置文件夹复制到宿主机
docker cp rocketmq-mqtt:/usr/local/rocketmq-mqtt/conf /app/rocketmq-mqtt/conf

#删除临时容器
docker rm -f rocketmq-mqtt

# 运行实例
docker run -d --restart=always --name rocketmq-mqtt \
-p 1884:1884 -p 25000:25000 \
-v /app/rocketmq-mqtt/conf:/usr/local/rocketmq-mqtt/conf \
rocketmq-mqtt:1.0.2

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐