使用docker-compose优雅部署rocketMQ

使用docker-compose优雅部署RocketMQ

复制代码
随着市场的发展,越来越多的复杂场景出现在我们日常的开发工作中。

随之也越来越多的好的工具,也同步出现在程序员的学习范围清单内。

好的工具提高产品性能的同时,也带来了很多安装上的问题,docker-compose就应运而生

最近一系列文章,希望能为大家提供一些便捷的安装方式
yaml 复制代码
version: '3.5'
services:
  rmqnamesrv:
    image: rocketmqinc/rocketmq
    container_name: rmqnamesrv
    restart: always
    ports:
      - 9876:9876
    environment:
    #内存分配
      JAVA_OPT_EXT: "-server -Xms1g -Xmx1g"
   # 日志和配置文件挂载到主机上,避免重启后丢失
    volumes:
      - /data/rocketmq/namesrv/logs:/root/logs
    command: sh mqnamesrv
          
  rmqbroker:
    image: rocketmqinc/rocketmq
    container_name: rmqbroker
    restart: always
    depends_on:
      - rmqnamesrv
    ports:
      - 10909:10909
      - 10911:10911
     # 日志和配置文件挂载到主机上,避免重启后丢失
    volumes:
      - /data/rocketmq/broker1/logs:/root/logs
      - /data/rocketmq/broker1/store:/root/store
      - /data/rocketmq/broker1/conf/broker.conf:/opt/rocketmq-4.4.0/conf/broker.conf
    command: sh mqbroker  -c /opt/rocketmq-4.4.0/conf/broker.conf
    environment:
      NAMESRV_ADDR: "rmqnamesrv:9876"
      JAVA_OPT_EXT: "-server -Xms1g -Xmx1g -Xmn1g"
  
  # rocket-mq的ui页面,方便监控和维护        
  rmqconsole:
    image: styletang/rocketmq-console-ng
    container_name: rocketmq-console
    restart: always
    ports:
      - 19876:8080
    depends_on:
      - rmqnamesrv
    # 时区和日志问题
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - /data/rocketmq/console/logs:/root/logs
    environment:
      JAVA_OPTS: "-Drocketmq.namesrv.addr=rmqnamesrv:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false"

# 用于多个应用限制在同一网络内,避免出现容器化部署后的网络问题
networks:
  default:
    external:
      name: nacos_default

部署完成后,即可看到rocket-mq相关的三个应用都正常启动在portainer-ce中

至此,恭喜你可以开始实践应用RocketMQ咯~

相关推荐
Roam-G7 小时前
在 Mac 上使用 Docker 安装 Milvus 2.6.2
docker·容器·milvus
敲上瘾8 小时前
Docker镜像构建指南:Dockerfile语法与docker build命令全解析
linux·服务器·docker·微服务·容器
YC运维12 小时前
Dockerfile实战案例详解
运维·docker·容器
小灰灰的可爱无人可替代15 小时前
记录一次使用docker和docker-compose更新vue前端项目问题
nginx·docker·vue
荣光波比21 小时前
K8S(一)—— 云原生与Kubernetes(K8S)从入门到实践:基础概念与操作全解析
云原生·容器·kubernetes
伞啊伞21 小时前
K8s概念基础(一)
云原生·容器·kubernetes
hello_2501 天前
k8s基础监控promql
云原生·容器·kubernetes
小杨的全栈之路1 天前
生产级实践:在 Docker 中安全导入自签名证书,保障 Spring Boot 应用通信安全
docker·https
静谧之心1 天前
在 K8s 上可靠运行 PD 分离推理:RBG 的设计与实现
云原生·容器·golang·kubernetes·开源·pd分离
计算机小手1 天前
推荐一个 GitHub 开源项目信息卡片生成工具,支持Docker快速部署和API调用
经验分享·docker·github·开源软件