码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • docker-compose一键安装rocketmq、zk、redis服务


    一、编辑docker-compose脚本

    在安装目录创建 docker-compose.yml 文件,贴入如下脚本。

    1. services:
    2. namesrv:
    3. image: apacherocketmq/rocketmq:4.6.0
    4. container_name: rmqnamesrv
    5. ports:
    6. - 9876:9876
    7. volumes:
    8. - /Users/hdfs/local_env/docker/rockmq/namesrv/logs:/home/rocketmq/logs
    9. command: sh mqnamesrv
    10. broker:
    11. image: apacherocketmq/rocketmq:4.6.0
    12. container_name: rmqbroker
    13. ports:
    14. - 10909:10909
    15. - 10911:10911
    16. - 10912:10912
    17. volumes:
    18. - /Users/hdfs/local_env/docker/rockmq/broker/logs:/home/rocketmq/logs
    19. - /Users/hdfs/local_env/docker/rockmq/broker/store:/home/rocketmq/store
    20. - /Users/hdfs/local_env/docker/rockmq/broker/conf/broker.conf:/home/rocketmq/rocketmq-4.6.0/conf/broker.conf
    21. environment:
    22. NAMESRV_ADDR: "namesrv:9876"
    23. JAVA_OPTS: " -Duser.home=/opt"
    24. JAVA_OPT_EXT: "-server -Xms128m -Xmx128m -Xmn128m"
    25. command: sh mqbroker -n namesrv:9876 -c ../conf/broker.conf
    26. depends_on:
    27. - namesrv
    28. rmqconsole:
    29. image: styletang/rocketmq-console-ng
    30. container_name: rmqconsole
    31. ports:
    32. - 18080:8080
    33. environment:
    34. JAVA_OPTS: "-Drocketmq.namesrv.addr=namesrv:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false"
    35. depends_on:
    36. - namesrv
    37. # zk服务
    38. zk_server:
    39. image: zookeeper:3.4.9
    40. container_name: zk_server
    41. hostname: zk_host
    42. ports:
    43. - 2181:2181
    44. # redis服务
    45. myredis:
    46. container_name: myredis
    47. image: redis:4.0
    48. ports:
    49. - 6379:6379
    50. privileged: true
    51. command: redis-server /etc/redis/redis.conf --appendonly yes
    52. volumes:
    53. - /Users/hdfs/local_env/docker/redis/data:/data
    54. - /Users/hdfs/local_env/docker/redis/conf/redis.conf:/etc/redis/redis.conf

    二 创建对应文件目录

    按照你的安装目录

    创建 rockmq/namesrv/logs 目录(空目录),比如目录:

    /Users/hdfs/local_env/docker/rockmq/namesrv/logs

    创建 rockmq/broker/logs 目录(空目录)、

    创建rockmq/broker/store目录(空目录)、

    创建rockmq/broker/conf目录、

    其配置文件broker.conf内容如下:

    brokerClusterName = DefaultCluster
    brokerName = broker-a
    brokerId = 0
    deleteWhen = 04
    fileReservedTime = 48
    brokerRole = ASYNC_MASTER
    flushDiskType = ASYNC_FLUSH
    brokerIP1=192.xx.xx.xx (填写自己的IP地址)

    创建redis/data目录(空目录)、

    创建redis/conf目录、

    其配置文件redis.conf内容如下:

    # 开启保护
    protected-mode yes
    # 开启远程连接 
    # bind 127.0.0.1 
    requirepass (你的redis密码 )
    port 6379
    timeout 0
    # 900s内至少一次写操作则执行bgsave进行RDB持久化
    save 900 1 
    save 300 10
    save 60 10000
    rdbcompression yes
    dbfilename dump.rdb
    dir /data
    appendonly yes
    appendfsync everysec

    最后、启动脚本

    docker-compose up -d --build

    Zookeeper在mac中使用时,dubbo注册非常慢的问题解决、

    这个时候可以排查自己的hostname 是否配置了本地域名,

    使用 vim /etc/hosts 查看,我自己的 hostname 如:

    可得知hostname是:MacBook-Pro.local

     因此配置到对应的 /etc/hosts 内,并重启对应的服务即可,正常启动服务!

    重启服务即可解决。

  • 相关阅读:
    基于Java的城市桥梁道路管理系统(Vue.js+SpringBoot)
    【计算机网络系列】数据链路层④:扩展的以太网及其高速以太网
    [附源码]计算机毕业设计springboot海滨学院学生大创项目申报与审批系统
    mac配置环境变量总结
    MFC:自绘CListBox,GetText返回一个乱码
    基于SqlSugar的开发框架循序渐进介绍(27)-- 基于MongoDB的数据库操作整合
    OSIRISV4.1使用教程(最新可用版)
    Delphi如何为Win32位和Win64位不同的目标平台分别编译生成不同文件名的EXE可执行文件
    使用Apache和内网穿透实现私有服务公网远程访问——“cpolar内网穿透”
    Java 并发 -- 线程状态(Java线程六种状态、操作系统层次的五种状态)、线程池(七大核心参数)、wait vs sleep
  • 原文地址:https://blog.csdn.net/doinbb/article/details/126231207
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号