docker-compose部署rocketmq

部署rocketmq

docker-compose安装:

1.从github上下载docker-compose二进制文件安装

​ Ubuntu下载docker-compose文件

复制代码
sudo curl -L https://github.com/docker/compose/releases/download/1.27.2/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose

​ CentOs下载docker-compose文件

复制代码
curl -L https://github.com/docker/compose/releases/download/1.27.2/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
2.添加可执行权限
复制代码
chmod +x /usr/local/bin/docker-compose
2.测试安装结果
复制代码
docker-compose --version
3.手动下载

官网选择版本 https://github.com/docker/compose/releases 选择相应版本,下载docker-compose-Linux-x86_64到本地或者服务器中 更名为docker-compose,并移动到 /usr/local/bin 目录下

1,新建挂载目录:
复制代码
mkdir -p /my/config/rocketmq/
mkdir -p /my/rocketmq/broker-logs/
mkdir -p /my/rocketmq/broker-store/
mkdir -p /my/rocketmq/logs/
mkdir -p /my/rocketmq/logs/

2,pull相关的镜像:

复制代码
docker pull foxiswho/rocketmq:server-4.5.2
docker pull foxiswho/rocketmq:broker-4.5.2
docker pull styletang/rocketmq-console-ng

3,编写broker.conf:

复制代码
cd /my/config/rocketmq/
vim broker.conf

内容为:

复制代码
brokerClusterName = DefaultCluster
brokerName = broker-a
brokerId = 0
deleteWhen = 04
fileReservedTime = 48
brokerRole = ASYNC_MASTER
flushDiskType = ASYNC_FLUSH
autoCreateTopicEnable = true
# 如果是本地程序调用云主机 mq,这个需要设置成 云主机 IP
brokerIP1=<your ip>
namesrvAddr=<your ip>:9876

4,编写docker-compose.yaml:

复制代码
cd /my/rocketmq
vim docker-compose.yaml

内容为:

复制代码
version: '3.5'
services:
  rmqnamesrv:
    image: foxiswho/rocketmq:server-4.5.2
    container_name: rmqnamesrv
    ports:
      -  9876:9876
    volumes:
      - /my/rocketmq/logs:/opt/logs
      - /my/rocketmq/store:/opt/store
    networks:
        rmq:
          aliases:
            - rmqnamesrv

  rmqbroker:
    image: foxiswho/rocketmq:broker-4.5.2
    container_name: rmqbroker
    ports:
      - 10909:10909
      - 10911:10911
    volumes:
      - /my/rocketmq/broker-logs:/root/logs/rocketmqlogs
      - /my/rocketmq/broker-store:/opt/store
      - /my/config/rocketmq/broker.conf:/etc/rocketmq/broker.conf
    environment:
        NAMESRV_ADDR: "rmqnamesrv:9876"
        JAVA_OPTS: " -Duser.home=/opt"
        JAVA_OPT_EXT: "-server -Xms128m -Xmx128m -Xmn128m"
    command: mqbroker -c /etc/rocketmq/broker.conf
    depends_on:
      - rmqnamesrv
    networks:
      rmq:
        aliases:
          - rmqbroker

  rmqconsole:
    image: styletang/rocketmq-console-ng
    container_name: rmqconsole
    ports:
      - 8087:8080
    environment:
        JAVA_OPTS: "-Drocketmq.namesrv.addr=rmqnamesrv:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false"
    depends_on:
      - rmqnamesrv
    networks:
      rmq:
        aliases:
          - rmqconsole

networks:
  rmq:
    name: rmq
    driver: bridge

4,在/my/rocketmq下运行:

复制代码
docker-compose up
#关闭
docker-compose down

检查docker容器:

复制代码
docker ps
相关推荐
AI小小怪1 小时前
在Linux服务器上安装CVAT (Docker 28.5.1)
运维·docker·容器·数据标注·cvat
小坏讲微服务3 小时前
Docker-compose 搭建Maven私服部署
java·spring boot·后端·docker·微服务·容器·maven
!chen3 小时前
k8s-Pod中的网络通信
网络·docker·kubernetes
余—笙5 小时前
Linux(docker)安装搭建CuteHttpFileServer/chfs文件共享服务器
linux·服务器·docker
芥子沫6 小时前
《玩转Docker》[应用篇13]:Docker安装部署Emby及使用技巧:家庭媒体服务器
docker·视频·emby
熙客6 小时前
Kubernetes是如何保证有状态应用数据安全和快速恢复的
mysql·云原生·容器·kubernetes
爱宇阳7 小时前
从容器化到自动化:Spring Boot 项目 Docker 部署与 GitLab CI/CD 集成 Harbor 全流程
spring boot·docker·自动化
似水流年 光阴已逝9 小时前
Kubernetes Pod 基本原理:全面详解
云原生·容器·kubernetes·pod
PKNLP9 小时前
07.docker介绍与常用命令
运维·docker·容器
人工智能训练11 小时前
在ubuntu系统中如何将docker安装在指定目录
linux·运维·服务器·人工智能·ubuntu·docker·ai编程