使用 docker-compose 安装 es、kibana、mysql、redis、kafka
2024-09-08 19:10:25
由于经常的安装虚拟机,每次都要重装环境比较麻烦。
这次写了一个 docker-compose
文件,一次性搞定安装问题。
目录结果如下:
---
version: "3.1"
networks:
zh-net:
driver: bridge
services:
db:
image: mysql:latest
container_name: zh_mysql
environment:
- MYSQL_ROOT_PASSWORD=123456
- TZ=Asia/Shanghai
volumes:
- /home/peng/docker/data/mysql:/var/lib/mysql
- ./mysql/init/:/docker-entrypoint-initdb.d/
ports:
- 3306:3306
command:
--character-set-server=utf8mb4
--collation-server=utf8mb4_general_ci
--explicit_defaults_for_timestamp=true
--lower_case_table_names=1
redis:
image: redis:latest
container_name: zh_redis
ports:
- 6379:6379
etcd:
image: bitnami/etcd:latest
container_name: zh_etcd
environment:
- ALLOW_NONE_AUTHENTICATION=yes
ports:
- 2379:2379
es:
image: elasticsearch:7.17.5
container_name: zh_es
environment:
- discovery.type=single-node
volumes:
- /home/peng/docker/conf/elasticsearch/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml
- /home/peng/docker/conf/elasticsearch/plugins:/usr/share/elasticsearch/plugins
ports:
- 9200:9200
networks:
- zh-net
kibana:
image: kibana:7.17.5
container_name: zh_kibana
volumes:
- /home/peng/docker/conf/kibana/kibana.yml:/usr/share/kibana/config/kibana.yml
ports:
- 5601:5601
networks:
- zh-net
depends_on:
- es
zookeeper:
image: confluentinc/cp-zookeeper:7.0.1
container_name: zh_zookeeper
environment:
ZOOKEEPER_CLIENT_PORT: 2181
ZOOKEEPER_TICK_TIME: 2000
broker:
image: confluentinc/cp-kafka:7.0.1
container_name: zh_broker
ports:
# To learn about configuring Kafka for access across networks see
# https://www.confluent.io/blog/kafka-client-cannot-connect-to-broker-on-aws-on-docker-etc/
- "9092:9092"
depends_on:
- zookeeper
environment:
KAFKA_BROKER_ID: 1
KAFKA_ZOOKEEPER_CONNECT: 'zookeeper:2181'
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_INTERNAL:PLAINTEXT
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://localhost:9092,PLAINTEXT_INTERNAL://broker:29092
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
KAFKA_TRANSACTION_STATE_LOG_MIN_ISR: 1
KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR: 1
kafka-map:
image: dushixiang/kafka-map:latest
container_name: zh_kafka-map
volumes:
- /home/peng/docker/data/kafka-map:/usr/local/kafka-map/data
environment:
- DEFAULT_USERNAME=admin
- DEFAULT_PASSWORD=admin
networks:
- zh-net
ports:
- 8089:8080
depends_on:
- broker
非持久化安装
---
version: "3.1"
networks:
zh-net:
driver: bridge
services:
db:
image: mysql:latest
container_name: zh_mysql
environment:
- MYSQL_ROOT_PASSWORD=123456
- TZ=Asia/Shanghai
networks:
- zh-net
ports:
- 3306:3306
command:
--character-set-server=utf8mb4
--collation-server=utf8mb4_general_ci
--explicit_defaults_for_timestamp=true
--lower_case_table_names=1
redis:
image: redis:latest
container_name: zh_redis
networks:
- zh-net
ports:
- 6379:6379
etcd:
image: bitnami/etcd:latest
container_name: zh_etcd
environment:
- ALLOW_NONE_AUTHENTICATION=yes
networks:
- zh-net
ports:
- 2379:2379
es:
image: elasticsearch:7.17.5
container_name: zh_es
environment:
- discovery.type=single-node
networks:
- zh-net
ports:
- 9200:9200
networks:
- zh-net
kibana:
image: kibana:7.17.5
container_name: zh_kibana
networks:
- zh-net
ports:
- 5601:5601
depends_on:
- es
zookeeper:
image: confluentinc/cp-zookeeper:7.0.1
container_name: zh_zookeeper
networks:
- zh-net
ports:
- 2181:2181
environment:
ZOOKEEPER_CLIENT_PORT: 2181
ZOOKEEPER_TICK_TIME: 2000
broker:
image: confluentinc/cp-kafka:7.0.1
container_name: zh_broker
networks:
- zh-net
ports:
- 9092:9092
depends_on:
- zookeeper
environment:
KAFKA_BROKER_ID: 1
KAFKA_ZOOKEEPER_CONNECT: 'zookeeper:2181'
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_INTERNAL:PLAINTEXT
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://localhost:9092,PLAINTEXT_INTERNAL://broker:29092
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
KAFKA_TRANSACTION_STATE_LOG_MIN_ISR: 1
KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR: 1
kafka-map:
image: dushixiang/kafka-map:latest
container_name: zh_kafka-map
environment:
- DEFAULT_USERNAME=admin
- DEFAULT_PASSWORD=admin
networks:
- zh-net
ports:
- 8089:8080
depends_on:
- broker
最新文章
- Kibana+X-Pack
- 转: html表单中get方式和post方式的区别
- 为php安装memcached扩展连接memcached服务器
- 循环初练 for
- BZOJ 3944: Sum [杜教筛]
- javascript 函数的4种调用方式与 this(上下文)的指向
- 论文笔记【四】Semi-supervised Word Sense Disambiguation with Neural Models
- JS调试技巧
- http 协议三次握手
- Git-.gitignore配置
- 【nginx】之常用命令
- innodb_locks_unsafe_for_binlog分析
- MySQL快速建立测试表
- 【刷题】洛谷 P1115 最大子段和
- Manacher练习
- Java 中的静态嵌套类和非静态嵌套类
- thinkerCMS是一款thinkphp写的微型cms框架可以参考下
- 使用axis2进行webservice发布与调用
- 【Mysql优化】索引碎片与维护
- 清北学堂(2019 5 1) part 4