diff --git a/apm-collector/apm-collector-boot/bin/collectorService.sh b/apm-collector/apm-collector-boot/bin/collectorService.sh
index db5147865afbacce8523a7c4a2d10b77488555e7..05e1f17d0ccc88dd78f1ee9dce569bac7703cb77 100644
--- a/apm-collector/apm-collector-boot/bin/collectorService.sh
+++ b/apm-collector/apm-collector-boot/bin/collectorService.sh
@@ -20,9 +20,9 @@ do
CLASSPATH="$i:$CLASSPATH"
done
-WEBUI_OPTIONS=" -Dcollector.logDir=${COLLECT_LOG_DIR}"
+COLLECTOR_OPTIONS=" -Dcollector.logDir=${COLLECT_LOG_DIR}"
-eval exec "\"$_RUNJAVA\" ${JAVA_OPTS} ${WEBUI_OPTIONS} -classpath $CLASSPATH org.skywalking.apm.collector.boot.CollectorBootStartUp \
+eval exec "\"$_RUNJAVA\" ${JAVA_OPTS} ${COLLECTOR_OPTIONS} -classpath $CLASSPATH org.skywalking.apm.collector.boot.CollectorBootStartUp \
2>${COLLECT_LOG_DIR}/collector.log 1> /dev/null &"
if [ $? -eq 0 ]; then
diff --git a/apm-collector/apm-collector-boot/docker/Dockerfile b/apm-collector/apm-collector-boot/docker/Dockerfile
new file mode 100644
index 0000000000000000000000000000000000000000..bfc1dcad98ee8329ea329b95c6635b1b7656407d
--- /dev/null
+++ b/apm-collector/apm-collector-boot/docker/Dockerfile
@@ -0,0 +1,29 @@
+FROM openjdk:8u111-jdk
+
+ENV ZK_ADDRESSES=127.0.0.1:2181 \
+ ES_CLUSTER_NAME=CollectorDBCluster \
+ ES_ADDRESSES=localhost:9300 \
+ BIND_HOST=localhost \
+ NAMING_BIND_HOST=localhost \
+ NAMING_BIND_PORT=10800 \
+ REMOTE_BIND_PORT=11800 \
+ AGENT_GRPC_BIND_PORT=11800 \
+ AGENT_JETTY_BIND_HOST=localhost \
+ AGENT_JETTY_BIND_PORT=12800 \
+ UI_JETTY_BIND_PORT=12800 \
+ UI_JETTY_BIND_HOST=localhost
+
+ADD skywalking-collector.tar.gz /usr/local
+COPY collectorService.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/collectorService.sh && chmod +x /docker-entrypoint.sh
+
+EXPOSE 10800
+EXPOSE 11800
+EXPOSE 12800
+
+ENTRYPOINT ["/docker-entrypoint.sh"]
+CMD ["/usr/local/skywalking-collector/bin/collectorService.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..50e2daa32f2f1a2bfc676486146856d87e1a5e26
--- /dev/null
+++ b/apm-collector/apm-collector-boot/docker/application.yml
@@ -0,0 +1,39 @@
+cluster:
+ zookeeper:
+ hostPort: {ZK_ADDRESSES}
+ sessionTimeout: 100000
+naming:
+ jetty:
+ host: {NAMING_BIND_HOST}
+ port: {NAMING_BIND_PORT}
+ context_path: /
+remote:
+ gRPC:
+ host: {BIND_HOST}
+ port: {REMOTE_BIND_PORT}
+agent_gRPC:
+ gRPC:
+ host: {BIND_HOST}
+ port: {AGENT_GRPC_BIND_PORT}
+agent_jetty:
+ jetty:
+ host: {AGENT_JETTY_BIND_HOST}
+ port: {AGENT_JETTY_BIND_PORT}
+ context_path: /
+agent_stream:
+ default:
+ buffer_file_path: ../buffer/
+ buffer_offset_max_file_size: 10M
+ buffer_segment_max_file_size: 500M
+ui:
+ jetty:
+ host: {UI_JETTY_BIND_HOST}
+ port: {UI_JETTY_BIND_PORT}
+ context_path: /
+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/collectorService.sh b/apm-collector/apm-collector-boot/docker/collectorService.sh
new file mode 100644
index 0000000000000000000000000000000000000000..919015eee5a5025591dfdc68d4a1ae72861efc3b
--- /dev/null
+++ b/apm-collector/apm-collector-boot/docker/collectorService.sh
@@ -0,0 +1,23 @@
+#!/usr/bin/env sh
+
+PRG="$0"
+PRGDIR=`dirname "$PRG"`
+[ -z "$COLLECTOR_HOME" ] && COLLECTOR_HOME=`cd "$PRGDIR/.." >/dev/null; pwd`
+
+COLLECT_LOG_DIR="${COLLECTOR_HOME}/logs"
+JAVA_OPTS=" -Xms256M -Xmx512M"
+
+if [ ! -d "${COLLECTOR_HOME}/logs" ]; then
+ mkdir -p "${COLLECT_LOG_DIR}"
+fi
+
+_RUNJAVA=${JAVA_HOME}/bin/java
+[ -z "$JAVA_HOME" ] && _RUNJAVA=java
+
+CLASSPATH="$COLLECTOR_HOME/config:$CLASSPATH"
+for i in "$COLLECTOR_HOME"/libs/*.jar
+do
+ CLASSPATH="$i:$CLASSPATH"
+done
+
+${_RUNJAVA} ${JAVA_OPTS} -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..ab9fe8e7e09bc26f0626355487489c7231f1558c
--- /dev/null
+++ b/apm-collector/apm-collector-boot/docker/docker-entrypoint.sh
@@ -0,0 +1,40 @@
+#!/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 {NAMING_BIND_HOST} to ${NAMING_BIND_HOST}"
+eval sed -i -e 's/\{NAMING_BIND_HOST\}/${NAMING_BIND_HOST}/' /usr/local/skywalking-collector/config/application.yml
+
+echo "replace {NAMING_BIND_PORT} to ${NAMING_BIND_PORT}"
+eval sed -i -e 's/\{NAMING_BIND_PORT\}/${NAMING_BIND_PORT}/' /usr/local/skywalking-collector/config/application.yml
+
+echo "replace {REMOTE_BIND_PORT} to ${REMOTE_BIND_PORT}"
+eval sed -i -e 's/\{REMOTE_BIND_PORT\}/${REMOTE_BIND_PORT}/' /usr/local/skywalking-collector/config/application.yml
+
+echo "replace {AGENT_GRPC_BIND_PORT} to ${AGENT_GRPC_BIND_PORT}"
+eval sed -i -e 's/\{AGENT_GRPC_BIND_PORT\}/${AGENT_GRPC_BIND_PORT}/' /usr/local/skywalking-collector/config/application.yml
+
+echo "replace {AGENT_JETTY_BIND_HOST} to ${AGENT_JETTY_BIND_HOST}"
+eval sed -i -e 's/\{AGENT_JETTY_BIND_HOST\}/${AGENT_JETTY_BIND_HOST}/' /usr/local/skywalking-collector/config/application.yml
+
+echo "replace {AGENT_JETTY_BIND_PORT} to ${AGENT_JETTY_BIND_PORT}"
+eval sed -i -e 's/\{AGENT_JETTY_BIND_PORT\}/${AGENT_JETTY_BIND_PORT}/' /usr/local/skywalking-collector/config/application.yml
+
+echo "replace {UI_JETTY_BIND_PORT} to ${UI_JETTY_BIND_PORT}"
+eval sed -i -e 's/\{UI_JETTY_BIND_PORT\}/${UI_JETTY_BIND_PORT}/' /usr/local/skywalking-collector/config/application.yml
+
+echo "replace {UI_JETTY_BIND_HOST} to ${UI_JETTY_BIND_HOST}"
+eval sed -i -e 's/\{UI_JETTY_BIND_HOST\}/${UI_JETTY_BIND_HOST}/' /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..e6915ec9a54802bd25a28e337441817359cde80a
--- /dev/null
+++ b/apm-collector/apm-collector-boot/docker/log4j2.xml
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/apm-collector/apm-collector-boot/pom.xml b/apm-collector/apm-collector-boot/pom.xml
index 9431eec545c17c0544c49890541a54ee41d6f9cb..e95679cc736a54cae5aa8312818185ab04b8c1a5 100644
--- a/apm-collector/apm-collector-boot/pom.xml
+++ b/apm-collector/apm-collector-boot/pom.xml
@@ -30,6 +30,11 @@
apm-collector-boot
jar
+
+ skywalking/skywalking-collector
+ ${version}
+
+
org.yaml
@@ -148,7 +153,7 @@
- Skywalking-Collector
+ skywalking-collector
maven-compiler-plugin
@@ -191,10 +196,31 @@
src/main/assembly/assembly.xml
+ ${project.basedir}/../../packages
+
+ com.spotify
+ docker-maven-plugin
+ ${docker.plugin.version}
+
+ false
+ ${docker.image.name}
+
+ ${docker.image.version}
+
+ ${project.basedir}/docker
+
+
+ /
+ ${project.basedir}/../../packages
+ ${build.finalName}.tar.gz
+
+
+
+
diff --git a/docker-compose.yml b/docker-compose.yml
index 233cc714bdf87b38c10c54dc94c10540d6b280ba..39a54b811a799893b1b3a1f37c836f994ba25775 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -36,10 +36,11 @@ services:
- 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
+ - AGENT_JETTY_BIND_HOST=skywalking-collector
+ - NAMING_BIND_HOST=skywalking-collector
+ - UI_JETTY_BIND_HOST=skywalking-collector
healthcheck:
- test: ["CMD", "curl", "-f", "http://localhost:10800/agentstream/grpc"]
+ test: ["CMD", "curl", "-f", "http://skywalking-collector:10800/agent/gRPC"]
interval: 10s
timeout: 10s
retries: 5