diff --git a/apm-collector/apm-collector-boot/docker/Dockerfile b/apm-collector/apm-collector-boot/docker/Dockerfile
new file mode 100644
index 0000000000000000000000000000000000000000..8e5539028f6f9da0ccf5d0faf70a39ad2ddb3eb6
--- /dev/null
+++ b/apm-collector/apm-collector-boot/docker/Dockerfile
@@ -0,0 +1,28 @@
+FROM openjdk:8u111-jdk
+
+ENV ZK_ADDRESSES=127.0.0.1:2181 \
+ ES_CLUSTER_NAME=CollectorDBCluster \
+ ES_ADDRESSES=localhost:9300 \
+ BIND_HOST=localhost \
+ CLUSTER_BIND_HOST=localhost \
+ CLUSTER_BIND_PORT=11800 \
+ UI_BIND_HOST=localhost \
+ UI_BIND_PORT=12800 \
+ GRPC_BIND_PORT=11800 \
+ AGENT_SERVER_BIND_PORT=10800 \
+ AGENT_STREAM_JETTY_BIND_PORT=12800
+
+ADD skywalking-collector.tar.gz /usr/local
+COPY collector-service.sh /usr/local/skywalking-collector/bin
+COPY log4j2.xml /usr/local/skywalking-collector/config
+COPY application.yml /usr/local/skywalking-collector/config
+COPY docker-entrypoint.sh /
+
+RUN chmod +x /usr/local/skywalking-collector/bin/collector-service.sh && chmod +x /docker-entrypoint.sh
+
+EXPOSE 10800
+EXPOSE 11800
+EXPOSE 12800
+
+ENTRYPOINT ["/docker-entrypoint.sh"]
+CMD ["/usr/local/skywalking-collector/bin/collector-service.sh"]
diff --git a/apm-collector/apm-collector-boot/docker/application.yml b/apm-collector/apm-collector-boot/docker/application.yml
new file mode 100644
index 0000000000000000000000000000000000000000..a8ab6e69a2c4cd1c10abe8cc8ff7b4faae3d60bc
--- /dev/null
+++ b/apm-collector/apm-collector-boot/docker/application.yml
@@ -0,0 +1,33 @@
+cluster:
+ zookeeper:
+ hostPort: {ZK_ADDRESSES}
+ sessionTimeout: 100000
+agent_server:
+ jetty:
+ host: {BIND_HOST}
+ port: {AGENT_SERVER_BIND_PORT}
+ context_path: /
+agent_stream:
+ grpc:
+ host: {BIND_HOST}
+ port: {GRPC_BIND_PORT}
+ jetty:
+ host: {UI_BIND_HOST}
+ port: {UI_BIND_PORT}
+ context_path: /
+ui:
+ jetty:
+ host: {UI_BIND_HOST}
+ port: {UI_BIND_PORT}
+ context_path: /
+collector_inside:
+ grpc:
+ host: {CLUSTER_BIND_HOST}
+ port: {CLUSTER_BIND_PORT}
+storage:
+ elasticsearch:
+ cluster_name: {ES_CLUSTER_NAME}
+ cluster_transport_sniffer: true
+ cluster_nodes: {ES_ADDRESSES}
+ index_shards_number: 2
+ index_replicas_number: 0
diff --git a/apm-collector/apm-collector-boot/docker/collector-service.sh b/apm-collector/apm-collector-boot/docker/collector-service.sh
new file mode 100755
index 0000000000000000000000000000000000000000..67baa12a75845959522d9ff9be344db989717e18
--- /dev/null
+++ b/apm-collector/apm-collector-boot/docker/collector-service.sh
@@ -0,0 +1,13 @@
+#!/usr/bin/env bash
+
+PRG="$0"
+PRGDIR=`dirname "$PRG"`
+[ -z "$COLLECTOR_HOME" ] && COLLECTOR_HOME=`cd "$PRGDIR/.." >/dev/null; pwd`
+
+CLASSPATH="$COLLECTOR_HOME/config:$CLASSPATH"
+for i in "$COLLECTOR_HOME"/libs/*.jar
+do
+ CLASSPATH="$i:$CLASSPATH"
+done
+
+java ${JAVA_OPTS} ${COLLECTOR_OPTIONS} -classpath $CLASSPATH org.skywalking.apm.collector.boot.CollectorBootStartUp
diff --git a/apm-collector/apm-collector-boot/docker/docker-entrypoint.sh b/apm-collector/apm-collector-boot/docker/docker-entrypoint.sh
new file mode 100644
index 0000000000000000000000000000000000000000..222d2feda4af8a5a68f78cbb17ed01ec45270ec1
--- /dev/null
+++ b/apm-collector/apm-collector-boot/docker/docker-entrypoint.sh
@@ -0,0 +1,37 @@
+#!/bin/sh
+
+echo "replace {ZK_ADDRESSES} to ${ZK_ADDRESSES}"
+eval sed -i -e 's/\{ZK_ADDRESSES\}/${ZK_ADDRESSES}/' /usr/local/skywalking-collector/config/application.yml
+
+echo "replace {ES_CLUSTER_NAME} to ${ES_CLUSTER_NAME}"
+eval sed -i -e 's/\{ES_CLUSTER_NAME\}/${ES_CLUSTER_NAME}/' /usr/local/skywalking-collector/config/application.yml
+
+echo "replace {ES_ADDRESSES} to ${ES_ADDRESSES}"
+eval sed -i -e 's/\{ES_ADDRESSES\}/${ES_ADDRESSES}/' /usr/local/skywalking-collector/config/application.yml
+
+echo "replace {BIND_HOST} to ${BIND_HOST}"
+eval sed -i -e 's/\{BIND_HOST\}/${BIND_HOST}/' /usr/local/skywalking-collector/config/application.yml
+
+echo "replace {GRPC_BIND_PORT} to ${GRPC_BIND_PORT}"
+eval sed -i -e 's/\{GRPC_BIND_PORT\}/${GRPC_BIND_PORT}/' /usr/local/skywalking-collector/config/application.yml
+
+echo "replace {AGENT_SERVER_BIND_PORT} to ${AGENT_SERVER_BIND_PORT}"
+eval sed -i -e 's/\{AGENT_SERVER_BIND_PORT\}/${AGENT_SERVER_BIND_PORT}/' /usr/local/skywalking-collector/config/application.yml
+
+echo "replace {AGENT_STREAM_JETTY_BIND_PORT} to ${AGENT_STREAM_JETTY_BIND_PORT}"
+eval sed -i -e 's/\{AGENT_STREAM_JETTY_BIND_PORT\}/${AGENT_STREAM_JETTY_BIND_PORT}/' /usr/local/skywalking-collector/config/application.yml
+
+echo "replace {UI_BIND_HOST} to ${UI_BIND_HOST}"
+eval sed -i -e 's/\{UI_BIND_HOST\}/${UI_BIND_HOST}/' /usr/local/skywalking-collector/config/application.yml
+
+echo "replace {UI_BIND_PORT} to ${UI_BIND_PORT}"
+eval sed -i -e 's/\{UI_BIND_PORT\}/${UI_BIND_PORT}/' /usr/local/skywalking-collector/config/application.yml
+
+echo "replace {CLUSTER_BIND_HOST} to ${CLUSTER_BIND_HOST}"
+eval sed -i -e 's/\{CLUSTER_BIND_HOST\}/${CLUSTER_BIND_HOST}/' /usr/local/skywalking-collector/config/application.yml
+
+echo "replace {CLUSTER_BIND_PORT} to ${CLUSTER_BIND_PORT}"
+eval sed -i -e 's/\{CLUSTER_BIND_PORT\}/${CLUSTER_BIND_PORT}/' /usr/local/skywalking-collector/config/application.yml
+
+
+exec "$@"
diff --git a/apm-collector/apm-collector-boot/docker/log4j2.xml b/apm-collector/apm-collector-boot/docker/log4j2.xml
new file mode 100644
index 0000000000000000000000000000000000000000..935d76fc6bc8ec8d55b6c67301e1a42658aa2960
--- /dev/null
+++ b/apm-collector/apm-collector-boot/docker/log4j2.xml
@@ -0,0 +1,16 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/apm-collector/apm-collector-boot/pom.xml b/apm-collector/apm-collector-boot/pom.xml
index df816e1d595f4bd823cf28e8b1240d6353cb6712..a377173c0ab114705242e4d2ad6a3820760c8104 100644
--- a/apm-collector/apm-collector-boot/pom.xml
+++ b/apm-collector/apm-collector-boot/pom.xml
@@ -15,7 +15,7 @@
org.skywalking.apm.collector.boot.CollectorBootStartUp
UTF-8
- skywalking/${artifactId}
+ skywalking/skywalking-collector
${version}
@@ -115,7 +115,7 @@
/
- ${project.build.directory}
+ ${project.basedir}/../../packages
${build.finalName}.tar.gz
@@ -131,4 +131,4 @@
-
\ No newline at end of file
+
diff --git a/apm-collector/apm-collector-boot/src/main/assembly/assembly.xml b/apm-collector/apm-collector-boot/src/main/assembly/assembly.xml
index 85ae37545558cbed7b7373c568424f3a60595bc6..592e97267760485d41a9e77b2cb935cd8f9f705c 100644
--- a/apm-collector/apm-collector-boot/src/main/assembly/assembly.xml
+++ b/apm-collector/apm-collector-boot/src/main/assembly/assembly.xml
@@ -27,10 +27,18 @@
src/main/resources
application.yml
+
+
+ /config
+
+
+ src/main/assembly
+
log4j2.xml
/config
+
${project.build.directory}
/libs
diff --git a/apm-collector/apm-collector-boot/src/main/assembly/log4j2.xml b/apm-collector/apm-collector-boot/src/main/assembly/log4j2.xml
new file mode 100644
index 0000000000000000000000000000000000000000..c76236792b3bcb4da4bd64246445cc3a04053bba
--- /dev/null
+++ b/apm-collector/apm-collector-boot/src/main/assembly/log4j2.xml
@@ -0,0 +1,26 @@
+
+
+
+ ${sys:collector.logDir}
+
+
+
+
+ %d - %c -%-4r [%t] %-5p %x - %m%n
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/apm-collector/apm-collector-boot/src/main/resources/log4j2.xml b/apm-collector/apm-collector-boot/src/main/resources/log4j2.xml
index c76236792b3bcb4da4bd64246445cc3a04053bba..9347ad94410125da4a7be8e574635aae68f69fa0 100644
--- a/apm-collector/apm-collector-boot/src/main/resources/log4j2.xml
+++ b/apm-collector/apm-collector-boot/src/main/resources/log4j2.xml
@@ -1,26 +1,16 @@
-
- ${sys:collector.logDir}
-
-
-
- %d - %c -%-4r [%t] %-5p %x - %m%n
-
-
-
-
-
-
+
+
+
-
+
diff --git a/docker-compose.yml b/docker-compose.yml
index 0f07a2151346eae7bea9e1d3e9b85fd6d72031c1..008c0b393a67c9a33c3356b25290000fd257406d 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -1,31 +1,60 @@
version: '2.1'
services:
skywalking-webui:
- image: skywalking/sky-walking-ui:3.1-2017
+ image: skywalking/skywalking-ui:3.2-2017
expose:
- "8080"
ports:
- "8080:8080"
links:
- skywalking-collector
+ depends_on:
+ skywalking-collector:
+ condition: service_healthy
environment:
- - COLLECTOR_SERVERS=skywalking-collector:12800
+ - COLLECTOR_SERVERS=skywalking-collector:10800
skywalking-collector:
- image: skywalking/skywalking-collector:3.1-2017
+ image: skywalking/skywalking-collector:3.2-2017
expose:
+ - "10800"
+ - "11800"
- "12800"
- - "1000"
ports:
- "12800:12800"
+ - "11800:11800"
+ - "10800:10800"
depends_on:
es-server:
condition: service_healthy
+ zookeeper-server:
+ condition: service_healthy
links:
- es-server
+ - zookeeper-server
environment:
- - ES_CLUSTER_NODES=es-server:9300
- - HTTP_HOST_NAME=0.0.0.0
+ - ZK_ADDRESSES=zookeeper-server:2181
+ - ES_ADDRESSES=es-server:9300
+ - BIND_HOST=0.0.0.0
+ - UI_BIND_HOST=skywalking-collector
+ - CLUSTER_BIND_HOST=0.0.0.0
+ healthcheck:
+ test: ["CMD", "curl", "-f", "http://localhost:10800/agentstream/grpc"]
+ interval: 10s
+ timeout: 10s
+ retries: 5
+
+ zookeeper-server:
+ image: zookeeper:3.4.9
+ expose:
+ - "2181"
+ ports:
+ - "2181:2181"
+ healthcheck:
+ test: ["CMD", "/zookeeper-3.4.9/bin/zkServer.sh", "status"]
+ interval: 10s
+ timeout: 10s
+ retries: 5
es-server:
image: elasticsearch:5.3
@@ -36,8 +65,11 @@ services:
expose:
- "9200"
- "9300"
+ ports:
+ - "9200:9200"
+ - "9300:9300"
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:9200"]
- interval: 30s
+ interval: 10s
timeout: 10s
retries: 5