安装docker、docker-compose
1、docker镜像
docker pull openzipkin/zipkin:2.6.1
docker pull openzipkin/zipkin-dependencies:1.11.3
docker pull elkozmon/zoonavigator-api:0.2.3
docker pull elkozmon/zoonavigator-web:0.2.3
docker pull zookeeper:3.4.9
docker pull docker.elastic.co/elasticsearch/elasticsearch:5.6.4
docker pull wurstmeister/zookeeper
docker pull wurstmeister/kafka
2、编写docker-compose.yml文件
version: '2'
services:
zoo1:
image: docker.io/zookeeper:3.4.9
hostname: zoo1
ports:
- "2181:2181"
environment:
ZOO_MY_ID: 1
ZOO_PORT: 2181
ZOO_SERVERS: server.1=zoo1:2888:3888
volumes:
- ./zk-single-kafka-single/zoo1/data:/data
- ./zk-single-kafka-single/zoo1/datalog:/datalog
kafka1:
image: wurstmeister/kafka
hostname: kafka1
ports:
- "9092:9092"
- "9999:9999"
environment:
# add the entry "127.0.0.1 kafka1" to your /etc/hosts file
KAFKA_ADVERTISED_LISTENERS: "PLAINTEXT://kafka1:9092"
KAFKA_ZOOKEEPER_CONNECT: "zoo1:2181"
KAFKA_BROKER_ID: 1
KAFKA_LOG4J_LOGGERS: "kafka.controller=INFO,kafka.producer.async.DefaultEventHandler=INFO,state.change.logger=INFO"
KAFKA_HEAP_OPTS: "-Xmx1G -Xms1G"
EXTRA_ARGS: "-name kafkaServer -loggc"
JMX_PORT: 9999
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
volumes:
- ./zk-single-kafka-single/kafka1/data:/var/lib/kafka/data
depends_on:
- zoo1
zoonavigator-api:
image: docker.io/elkozmon/zoonavigator-api:0.2.3
environment:
SERVER_HTTP_PORT: 9005
restart: unless-stopped
depends_on:
- zoo1
zoonavigator-web:
image: docker.io/elkozmon/zoonavigator-web:0.2.3
ports:
- "8004:8000"
environment:
API_HOST: "zoonavigator-api"
API_PORT: 9005
links:
- zoonavigator-api
depends_on:
- zoonavigator-api
restart: unless-stopped
zipkin:
environment:
- KAFKA_ZOOKEEPER=kafka1
depends_on:
- kafka1
es:
image: docker.elastic.co/elasticsearch/elasticsearch:5.6.4
container_name: elasticsearch
# Uncomment to expose the storage port for testing
ports:
- 9200:9200
environment:
- http.host=0.0.0.0
- transport.host=127.0.0.1
- http.cors.enabled=true
- http.cors.allow-origin=*
- xpack.security.enabled=false
zipkin:
image: openzipkin/zipkin:2.6.1
container_name: zipkin
environment:
- STORAGE_TYPE=elasticsearch
# Point the zipkin at the storage backend
- ES_HOSTS=elasticsearch
# Uncomment to enable scribe
# - SCRIBE_ENABLED=true
# Uncomment to enable self-tracing
# - SELF_TRACING_ENABLED=true
# Uncomment to enable debug logging
- JAVA_OPTS=-Dlogging.level.zipkin=DEBUG -Dlogging.level.zipkin2=DEBUG
ports:
# Port used for the Zipkin UI and HTTP Api
- 9411:9411
# Uncomment if you set SCRIBE_ENABLED=true
# - 9410:9410
depends_on:
- es
- kafka1
dependencies:
image: openzipkin/zipkin-dependencies:1.11.3
container_name: dependencies
entrypoint: crond -f
environment:
- STORAGE_TYPE=elasticsearch
- ES_HOSTS=elasticsearch
# - ZIPKIN_LOG_LEVEL=DEBUG
# Uncomment to adjust memory used by the dependencies job
- JAVA_OPTS=-verbose:gc -Xms1G -Xmx1G
depends_on:
- es
3、启动、停止脚本
docker-compose docker-compose.yml up -d
docker-compose docker-compose.yml down -d
直接可以上手用,出现坑,请留言。