diff --git a/docker/pinpoint-collector/Dockerfile b/docker/pinpoint-collector/Dockerfile new file mode 100644 index 000000000..e2b98fd15 --- /dev/null +++ b/docker/pinpoint-collector/Dockerfile @@ -0,0 +1,22 @@ +# DESCRIPTION Pinpoint APM Collector +# TO_BUILD docker build -t pinpoint-collector . +# TO_RUN docker run -d --net=host -e HBASE_HOST= -e HBASE_PORT=2181 -e COLLECTOR_TCP_PORT=9994 -e COLLECTOR_UDP_STAT_LISTEN_PORT=9995 -e COLLECTOR_UDP_SPAN_LISTEN_PORT=9996 -p 9994:9994 -p 9995:9995/udp -p 9996:9996/udp --name=pinpoint-collector pinpoint-collector + +FROM tomcat:8-jre8 +MAINTAINER John Crygier + +ENV PINPOINT_VERSION 1.0.4 + +RUN curl -SL "https://github.com/naver/pinpoint/releases/download/$PINPOINT_VERSION/pinpoint-collector-$PINPOINT_VERSION.war" -o pinpoint-collector.war && \ + rm -rf /usr/local/tomcat/webapps && \ + mkdir -p /usr/local/tomcat/webapps && \ + unzip pinpoint-collector.war -d /usr/local/tomcat/webapps/ROOT && \ + rm -rf pinpoint-collector.war + +ADD start.sh /usr/local/tomcat/start.sh +RUN chmod a+x /usr/local/tomcat/start.sh + +ADD hbase.properties /assets/hbase.properties +ADD pinpoint-collector.properties /assets/pinpoint-collector.properties + +CMD ["/usr/local/tomcat/start.sh"] diff --git a/docker/pinpoint-collector/hbase.properties b/docker/pinpoint-collector/hbase.properties new file mode 100644 index 000000000..ab80251d5 --- /dev/null +++ b/docker/pinpoint-collector/hbase.properties @@ -0,0 +1,3 @@ +hbase.client.host=HBASE_HOST +hbase.client.port=HBASE_PORT +hbase.htable.threads.max=4 \ No newline at end of file diff --git a/docker/pinpoint-collector/pinpoint-collector.properties b/docker/pinpoint-collector/pinpoint-collector.properties new file mode 100644 index 000000000..2befb7307 --- /dev/null +++ b/docker/pinpoint-collector/pinpoint-collector.properties @@ -0,0 +1,32 @@ +hbase.hTablePoolSize=1024 + +# tcp listen ip +collector.tcpListenIp=0.0.0.0 +collector.tcpListenPort=COLLECTOR_TCP_PORT + +# udp listen ip +collector.udpStatListenIp=0.0.0.0 +collector.udpStatListenPort=COLLECTOR_UDP_STAT_LISTEN_PORT + +collector.l4.ip= + +collector.udpStatWorkerThread=16 +collector.udpStatWorkerQueueSize=512 + +collector.udpStatSocketReceiveBufferSize=4194304 + + +# span listen port --------------------------------------------------------------------- +collector.udpSpanListenIp=0.0.0.0 +collector.udpSpanListenPort=COLLECTOR_UDP_SPAN_LISTEN_PORT + +collector.udpSpanWorkerThread=32 +collector.udpSpanWorkerQueueSize=1024 + +collector.udpSpanSocketReceiveBufferSize=4194304 + +statistics.flushPeriod=1000 + +cluster.enable=false +cluster.zookeeper.address= +cluster.zookeeper.sessiontimeout= \ No newline at end of file diff --git a/docker/pinpoint-collector/start.sh b/docker/pinpoint-collector/start.sh new file mode 100644 index 000000000..e7858e822 --- /dev/null +++ b/docker/pinpoint-collector/start.sh @@ -0,0 +1,20 @@ +#!/bin/bash +set -e +set -x + +COLLECTOR_TCP_PORT=${COLLECTOR_TCP_PORT:-} +COLLECTOR_UDP_STAT_LISTEN_PORT=${COLLECTOR_UDP_STAT_LISTEN_PORT:-} +COLLECTOR_UDP_SPAN_LISTEN_PORT=${COLLECTOR_UDP_SPAN_LISTEN_PORT:-} +HBASE_HOST=${HBASE_HOST:-} +HBASE_PORT=${HBASE_PORT:-} + +cp /assets/pinpoint-collector.properties /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/pinpoint-collector.properties +cp /assets/hbase.properties /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/hbase.properties + +sed 's/COLLECTOR_TCP_PORT/'"${COLLECTOR_TCP_PORT}"'/g' -i /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/pinpoint-collector.properties +sed 's/COLLECTOR_UDP_STAT_LISTEN_PORT/'"${COLLECTOR_UDP_STAT_LISTEN_PORT}"'/g' -i /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/pinpoint-collector.properties +sed 's/COLLECTOR_UDP_SPAN_LISTEN_PORT/'"${COLLECTOR_UDP_SPAN_LISTEN_PORT}"'/g' -i /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/pinpoint-collector.properties +sed 's/HBASE_HOST/'"${HBASE_HOST}"'/g' -i /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/hbase.properties +sed 's/HBASE_PORT/'"${HBASE_PORT}"'/g' -i /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/hbase.properties + +/usr/local/tomcat/bin/catalina.sh run \ No newline at end of file diff --git a/docker/pinpoint-hbase/Dockerfile b/docker/pinpoint-hbase/Dockerfile new file mode 100644 index 000000000..d4bc7833b --- /dev/null +++ b/docker/pinpoint-hbase/Dockerfile @@ -0,0 +1,40 @@ +# DESCRIPTION Pinpoint APM HBase (Data Storage) +# TO_BUILD docker build -t pinpoint-hbase . +# TO_RUN docker run -d --net=host -p 2181:2181 -p 60000:60000 -p 60010:60010 -p 60020:60020 -p 60030:60030 --name=pinpoint-hbase pinpoint-hbase + +FROM java:7-jdk +MAINTAINER John Crygier + +ENV JAVA_HOME /usr/lib/jvm/java-7-openjdk-amd64/ +ENV HBASE_VERSION 0.94.27 +ENV HBASE_HOME /opt/hbase/hbase-$HBASE_VERSION + +RUN mkdir -p /opt/hbase && \ + cd /opt/hbase && \ + curl -SL "http://apache.mirrors.pair.com/hbase/hbase-$HBASE_VERSION/hbase-$HBASE_VERSION.tar.gz" -o hbase.tar.gz && \ + tar xfvz hbase.tar.gz && \ + rm -rf hbase.tar.gz + +ADD hbase-site.xml /opt/hbase/hbase-$HBASE_VERSION/conf/hbase-site.xml + +RUN curl -SL "https://raw.githubusercontent.com/naver/pinpoint/master/scripts/hbase-create.hbase" -o /opt/hbase/hbase-create.hbase && \ + $HBASE_HOME/bin/start-hbase.sh && \ + sleep 10 && \ + $HBASE_HOME/bin/hbase shell /opt/hbase/hbase-create.hbase && \ + $HBASE_HOME/bin/stop-hbase.sh + +VOLUME /home/pinpoint/hbase +VOLUME /home/pinpoint/zookeeper + +# zookeeper +EXPOSE 2181 +# HBase Master API port +EXPOSE 60000 +# HBase Master Web UI +EXPOSE 60010 +# Regionserver API port +EXPOSE 60020 +# HBase Regionserver web UI +EXPOSE 60030 + +CMD /opt/hbase/hbase-0.94.27/bin/hbase master start diff --git a/docker/pinpoint-hbase/hbase-site.xml b/docker/pinpoint-hbase/hbase-site.xml new file mode 100644 index 000000000..99d11dd0b --- /dev/null +++ b/docker/pinpoint-hbase/hbase-site.xml @@ -0,0 +1,18 @@ + + + hbase.rootdir + file:///home/pinpoint/hbase + + + hbase.zookeeper.property.dataDir + /home/pinpoint/zookeeper + + + hbase.master.port + 60000 + + + hbase.regionserver.port + 60020 + + \ No newline at end of file diff --git a/docker/pinpoint-web/Dockerfile b/docker/pinpoint-web/Dockerfile new file mode 100644 index 000000000..1a820d4fe --- /dev/null +++ b/docker/pinpoint-web/Dockerfile @@ -0,0 +1,22 @@ +# DESCRIPTION Pinpoint APM Web (User Interface) +# TO_BUILD docker build -t pinpoint-web . +# TO_RUN docker run -d -p 8080:8080 --net=host -e HBASE_HOST= -e HBASE_PORT=2181 --name=pinpoint-web pinpoint-web + +FROM tomcat:8-jre8 +MAINTAINER John Crygier + +ENV PINPOINT_VERSION 1.0.4 + +RUN curl -SL "https://github.com/naver/pinpoint/releases/download/$PINPOINT_VERSION/pinpoint-web-$PINPOINT_VERSION.war" -o pinpoint-web.war && \ + rm -rf /usr/local/tomcat/webapps && \ + mkdir -p /usr/local/tomcat/webapps && \ + unzip pinpoint-web.war -d /usr/local/tomcat/webapps/ROOT && \ + rm -rf pinpoint-web.war + +ADD start.sh /usr/local/tomcat/start.sh +RUN chmod a+x /usr/local/tomcat/start.sh + +ADD hbase.properties /assets/hbase.properties +ADD pinpoint-web.properties /assets/pinpoint-web.properties + +CMD ["/usr/local/tomcat/start.sh"] diff --git a/docker/pinpoint-web/hbase.properties b/docker/pinpoint-web/hbase.properties new file mode 100644 index 000000000..ab80251d5 --- /dev/null +++ b/docker/pinpoint-web/hbase.properties @@ -0,0 +1,3 @@ +hbase.client.host=HBASE_HOST +hbase.client.port=HBASE_PORT +hbase.htable.threads.max=4 \ No newline at end of file diff --git a/docker/pinpoint-web/pinpoint-web.properties b/docker/pinpoint-web/pinpoint-web.properties new file mode 100644 index 000000000..b61c3472b --- /dev/null +++ b/docker/pinpoint-web/pinpoint-web.properties @@ -0,0 +1,14 @@ +# local +cluster.enable=false +cluster.web.tcp.port=9995 +cluster.zookeeper.address=127.0.0.1:22213 +cluster.zookeeper.sessiontimeout=3000 +cluster.zookeeper.retry.interval=5000 + +# FIXME - should be removed for proper authentication +admin.password=admin + +#log site link +#log.enable=false +#log.page.url= +#log.button.name= \ No newline at end of file diff --git a/docker/pinpoint-web/start.sh b/docker/pinpoint-web/start.sh new file mode 100644 index 000000000..056e046ca --- /dev/null +++ b/docker/pinpoint-web/start.sh @@ -0,0 +1,14 @@ +#!/bin/bash +set -e +set -x + +HBASE_HOST=${HBASE_HOST:-} +HBASE_PORT=${HBASE_PORT:-} + +cp /assets/pinpoint-web.properties /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/pinpoint-web.properties +cp /assets/hbase.properties /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/hbase.properties + +sed 's/HBASE_HOST/'"${HBASE_HOST}"'/g' -i /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/hbase.properties +sed 's/HBASE_PORT/'"${HBASE_PORT}"'/g' -i /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/hbase.properties + +/usr/local/tomcat/bin/catalina.sh run \ No newline at end of file