docker run --name redis --restart=always -p 6379:6379 -v /root/redis/data:/data -v /root/redis/conf/redis.conf:/etc/redis/redis.conf --privileged=true -d redis redis-server /etc/redis/redis.conf
docker run --restart=always --env MODE=standalone --name nacos -d -p 8848:8848 -p 9848:9848 nacos/nacos-server:2.0.3
mkdir -p /root/rocketmq/data/namesrv/logs /root/rocketmq/data/namesrv/store
docker run -d \
--restart=always \
--name rmqnamesrv \
-p 9876:9876 \
-v /root/rocketmq/data/namesrv/logs:/root/logs \
-v /root/rocketmq/data/namesrv/store:/root/store \
-e "MAX_POSSIBLE_HEAP=100000000" \
rocketmqinc/rocketmq \
sh mqnamesrv
mkdir -p /root/rocketmq/data/broker/logs /root/rocketmq/data/broker/store /root/rocketmq/conf
vi /root/rocketmq/conf/broker.conf
#所属集群名称,如果节点较多可以配置多个
brokerClusterName = DefaultCluster
#broker名称,master和slave使用相同的名称,表明他们的主从关系
brokerName = broker-a
#0表示Master,大于0表示不同的slave
brokerId = 0
#表示几点做消息删除动作,默认是凌晨4点
deleteWhen = 04
#在磁盘上保留消息的时长,单位是小时
fileReservedTime = 48
#有三个值:SYNC_MASTER,ASYNC_MASTER,SLAVE;同步和异步表示Master和Slave之间同步数据的机制;
brokerRole = ASYNC_MASTER
#刷盘策略,取值为:ASYNC_FLUSH,SYNC_FLUSH表示同步刷盘和异步刷盘;SYNC_FLUSH消息写入磁盘后才返回成功状态,ASYNC_FLUSH不需要;
flushDiskType = ASYNC_FLUSH
#设置broker节点所在服务器的ip地址
brokerIP1 = 192.168.52.136
#磁盘使用达到95%之后,生产者再写入消息会报错 CODE: 14 DESC: service not available now, maybe disk full
diskMaxUsedSpaceRatio=95
docker run -d \
--restart=always \
--name rmqbroker \
--link rmqnamesrv:namesrv \
-p 10911:10911 \
-p 10909:10909 \
-v /root/rocketmq/data/broker/logs:/root/logs \
-v /root/rocketmq/data/broker/store:/root/store \
-v /root/rocketmq/conf/broker.conf:/opt/rocketmq-4.4.0/conf/broker.conf \
-e "NAMESRV_ADDR=namesrv:9876" \
-e "MAX_POSSIBLE_HEAP=200000000" \
rocketmqinc/rocketmq \
sh mqbroker -c /opt/rocketmq-4.4.0/conf/broker.conf
docker pull elasticsearch:7.17.3
#进行挂载
mkdir -p /root/elasticsearch/config
mkdir -p /root/elasticsearch/data
#配置外部访问
echo "http.host:0.0.0.0">>/root/elasticsearch/config/elasticsearch.yml
docker run --name elasticsearch -p 9200:9200 -p 9300:9300 \
--restart=always \
-e "discovery.type=single-node" \
-e ES_JAVA_OPTS="-Xms64m -Xmx128m" \
-v /root/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
-v /root/elasticsearch/data:/usr/share/elasticsearch/data \
-v /root/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
-d elasticsearch:7.17.3
docker pull kibana:7.17.3
#进行挂载
mkdir -p /root/kibana/config/
#配置
vim /root/kibana/config/kibana.yml
#
# ** THIS IS AN AUTO-GENERATED FILE **
# 根据自己的IP地址来配
#
# Default Kibana configuration for docker target
server.name: kibana
server.host: "0"
elasticsearch.hosts: [ "http://8.218.172.164:9200" ]
xpack.monitoring.ui.container.elasticsearch.enabled: true
#启动
docker run -d \
--name=kibana \
--restart=always \
-p 5601:5601 \
-v /root/kibana/config/kibana.yml:/usr/share/kibana/config/kibana.yml \
kibana:7.17.3
#查看日志
docker logs kibana