From 076b311bed8f2560a3389d98e5efec0b2b5a403a Mon Sep 17 00:00:00 2001 From: gaohongtao Date: Wed, 30 Jan 2019 13:11:47 +0800 Subject: [PATCH] Add 6.0.0-GA --- 6/6.0-GA/base/Dockerfile | 90 ++++++ 6/6.0-GA/compose/README.md | 0 6/6.0-GA/compose/config/alarm-settings.yml | 72 +++++ 6/6.0-GA/compose/config/application.yml | 99 ++++++ .../compose/config/component-libraries.yml | 295 ++++++++++++++++++ .../config/datasource-settings.properties | 31 ++ 6/6.0-GA/compose/config/log4j2.xml | 36 +++ 6/6.0-GA/compose/docker-compose.yml | 53 ++++ 6/6.0-GA/oap/Dockerfile | 37 +++ 6/6.0-GA/oap/docker-entrypoint.sh | 28 ++ 6/6.0-GA/oap/log4j2.xml | 35 +++ 6/6.0-GA/ui/Dockerfile | 37 +++ 6/6.0-GA/ui/docker-entrypoint.sh | 21 ++ 6/6.0-GA/ui/logback.xml | 21 ++ 14 files changed, 855 insertions(+) create mode 100644 6/6.0-GA/base/Dockerfile create mode 100644 6/6.0-GA/compose/README.md create mode 100644 6/6.0-GA/compose/config/alarm-settings.yml create mode 100644 6/6.0-GA/compose/config/application.yml create mode 100644 6/6.0-GA/compose/config/component-libraries.yml create mode 100644 6/6.0-GA/compose/config/datasource-settings.properties create mode 100644 6/6.0-GA/compose/config/log4j2.xml create mode 100644 6/6.0-GA/compose/docker-compose.yml create mode 100644 6/6.0-GA/oap/Dockerfile create mode 100644 6/6.0-GA/oap/docker-entrypoint.sh create mode 100644 6/6.0-GA/oap/log4j2.xml create mode 100644 6/6.0-GA/ui/Dockerfile create mode 100644 6/6.0-GA/ui/docker-entrypoint.sh create mode 100644 6/6.0-GA/ui/logback.xml diff --git a/6/6.0-GA/base/Dockerfile b/6/6.0-GA/base/Dockerfile new file mode 100644 index 0000000..e00274c --- /dev/null +++ b/6/6.0-GA/base/Dockerfile @@ -0,0 +1,90 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +FROM openjdk:8-jre-alpine + +LABEL maintainer="hanahmily@apache.org" + +# Install required packages +RUN apk add --no-cache \ + bash \ + python \ + su-exec + + +ENV SKYWALKING_HOME=/skywalking +RUN mkdir -p "${SKYWALKING_HOME}" +WORKDIR $SKYWALKING_HOME + +ENV GPG_KEYS A968F6905E0ACB59E5B24C15D3D9CD50820184C2 B0801BC746F965029A1338072EF5026E70A55777 D360AB2AB20B28403270E2CBE8608938DB25E06B +ENV SKYWALKING_VERSION=6.0.0-GA +ENV SKYWALKING_SHA512 a19a24b790f41b1d7f93547104fbfc70a1dc208d855026b0c4696d1991518a952d031b62a76bfa923394042757dc92aa87e6cac6502d015f30258e9959e393bf + +ENV SKYWALKING_TGZ_URLS \ + https://www.apache.org/dyn/closer.cgi?action=download&filename=incubator/skywalking/$SKYWALKING_VERSION/apache-skywalking-apm-incubating-$SKYWALKING_VERSION.tar.gz \ + # if the version is outdated, we might have to pull from the dist/archive :/ + https://www-us.apache.org/dist/incubator/skywalking/$SKYWALKING_VERSION/apache-skywalking-apm-incubating-$SKYWALKING_VERSION.tar.gz \ + https://www.apache.org/dist/incubator/skywalking/$SKYWALKING_VERSION/apache-skywalking-apm-incubating-$SKYWALKING_VERSION.tar.gz \ + https://archive.apache.org/dist/incubator/skywalking/$SKYWALKING_VERSION/apache-skywalking-apm-incubating-$SKYWALKING_VERSION.tar.gz + +ENV SKYWALKING_ASC_URLS \ + https://www.apache.org/dyn/closer.cgi?action=download&filename=incubator/skywalking/$SKYWALKING_VERSION/apache-skywalking-apm-incubating-$SKYWALKING_VERSION.tar.gz.asc \ + # if the version is outdated, we might have to pull from the dist/archive :/ + https://www-us.apache.org/dist/incubator/skywalking/$SKYWALKING_VERSION/apache-skywalking-apm-incubating-$SKYWALKING_VERSION.tar.gz.asc \ + https://www.apache.org/dist/incubator/skywalking/$SKYWALKING_VERSION/apache-skywalking-apm-incubating-$SKYWALKING_VERSION.tar.gz.asc \ + https://archive.apache.org/dist/incubator/skywalking/$SKYWALKING_VERSION/apache-skywalking-apm-incubating-$SKYWALKING_VERSION.tar.gz.asc + +RUN set -eux; \ + \ + apk add --no-cache --virtual .fetch-deps \ + gnupg \ + \ + ca-certificates \ + openssl \ + ; \ + \ + export GNUPGHOME="$(mktemp -d)"; \ + for key in $GPG_KEYS; do \ + gpg --batch --keyserver pgp.mit.edu --recv-keys "$key"; \ + done; \ + \ + success=; \ + for url in $SKYWALKING_TGZ_URLS; do \ + if wget -O skywalking.tar.gz "$url"; then \ + success=1; \ + break; \ + fi; \ + done; \ + [ -n "$success" ]; \ + \ + echo "$SKYWALKING_SHA512 *skywalking.tar.gz" | sha512sum -c -; \ + \ + success=; \ + for url in $SKYWALKING_ASC_URLS; do \ + if wget -O skywalking.tar.gz.asc "$url"; then \ + success=1; \ + break; \ + fi; \ + done; \ + [ -n "$success" ]; \ + \ + gpg --batch --verify skywalking.tar.gz.asc skywalking.tar.gz; \ + tar -xvf skywalking.tar.gz --strip-components=1; \ + rm -rf bin/; \ + rm skywalking.tar.gz*; \ + command -v gpgconf && gpgconf --kill all || :; \ + rm -rf "$GNUPGHOME"; \ + apk del .fetch-deps diff --git a/6/6.0-GA/compose/README.md b/6/6.0-GA/compose/README.md new file mode 100644 index 0000000..e69de29 diff --git a/6/6.0-GA/compose/config/alarm-settings.yml b/6/6.0-GA/compose/config/alarm-settings.yml new file mode 100644 index 0000000..eab4407 --- /dev/null +++ b/6/6.0-GA/compose/config/alarm-settings.yml @@ -0,0 +1,72 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Sample alarm rules. +rules: + # Rule unique name, must be ended with `_rule`. + service_resp_time_rule: + indicator-name: service_resp_time + op: ">" + threshold: 1000 + period: 10 + count: 3 + silence-period: 5 + message: Response time of service {name} is more than 1000ms in last 3 minutes. + service_sla_rule: + # Indicator value need to be long, double or int + indicator-name: service_sla + op: "<" + threshold: 8000 + # The length of time to evaluate the metric + period: 10 + # How many times after the metric match the condition, will trigger alarm + count: 2 + # How many times of checks, the alarm keeps silence after alarm triggered, default as same as period. + silence-period: 3 + message: Successful rate of service {name} is lower than 80% in last 2 minutes. + service_p90_sla_rule: + # Indicator value need to be long, double or int + indicator-name: service_p90 + op: ">" + threshold: 1000 + period: 10 + count: 3 + silence-period: 5 + message: 90% response time of service {name} is lower than 1000ms in last 3 minutes + service_instance_resp_time_rule: + indicator-name: service_instance_resp_time + op: ">" + threshold: 1000 + period: 10 + count: 2 + silence-period: 5 + message: Response time of service instance {name} is more than 1000ms in last 2 minutes. +# Active endpoint related metric alarm will cost more memory than service and service instance metric alarm. +# Because the number of endpoint is much more than service and instance. +# +# endpoint_avg_rule: +# indicator-name: endpoint_avg +# op: ">" +# threshold: 1000 +# period: 10 +# count: 2 +# silence-period: 5 +# message: Response time of endpoint {name} is more than 1000ms in last 2 minutes. + +webhooks: +# - http://127.0.0.1/notify/ +# - http://127.0.0.1/go-wechat/ + diff --git a/6/6.0-GA/compose/config/application.yml b/6/6.0-GA/compose/config/application.yml new file mode 100644 index 0000000..46ffe83 --- /dev/null +++ b/6/6.0-GA/compose/config/application.yml @@ -0,0 +1,99 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +cluster: + standalone: +# Please check your ZooKeeper is 3.5+, However, it is also compatible with ZooKeeper 3.4.x. Replace the ZooKeeper 3.5+ +# library the oap-libs folder with your ZooKeeper 3.4.x library. +# zookeeper: +# nameSpace: ${SW_NAMESPACE:""} +# hostPort: ${SW_CLUSTER_ZK_HOST_PORT:localhost:2181} +# #Retry Policy +# baseSleepTimeMs: ${SW_CLUSTER_ZK_SLEEP_TIME:1000} # initial amount of time to wait between retries +# maxRetries: ${SW_CLUSTER_ZK_MAX_RETRIES:3} # max number of times to retry +# kubernetes: +# watchTimeoutSeconds: ${SW_CLUSTER_K8S_WATCH_TIMEOUT:60} +# namespace: ${SW_CLUSTER_K8S_NAMESPACE:default} +# labelSelector: ${SW_CLUSTER_K8S_LABEL:app=collector,release=skywalking} +# uidEnvName: ${SW_CLUSTER_K8S_UID:SKYWALKING_COLLECTOR_UID} +# consul: +# serviceName: ${SW_SERVICE_NAME:"SkyWalking_OAP_Cluster"} +# Consul cluster nodes, example: 10.0.0.1:8500,10.0.0.2:8500,10.0.0.3:8500 +# hostPort: ${SW_CLUSTER_CONSUL_HOST_PORT:localhost:8500} +core: + default: + restHost: ${SW_CORE_REST_HOST:0.0.0.0} + restPort: ${SW_CORE_REST_PORT:12800} + restContextPath: ${SW_CORE_REST_CONTEXT_PATH:/} + gRPCHost: ${SW_CORE_GRPC_HOST:0.0.0.0} + gRPCPort: ${SW_CORE_GRPC_PORT:11800} + downsampling: + - Hour + - Day + - Month + # Set a timeout on metric data. After the timeout has expired, the metric data will automatically be deleted. + recordDataTTL: ${SW_CORE_RECORD_DATA_TTL:90} # Unit is minute + minuteMetricsDataTTL: ${SW_CORE_MINUTE_METRIC_DATA_TTL:90} # Unit is minute + hourMetricsDataTTL: ${SW_CORE_HOUR_METRIC_DATA_TTL:36} # Unit is hour + dayMetricsDataTTL: ${SW_CORE_DAY_METRIC_DATA_TTL:45} # Unit is day + monthMetricsDataTTL: ${SW_CORE_MONTH_METRIC_DATA_TTL:18} # Unit is month +storage: + elasticsearch: + nameSpace: ${SW_NAMESPACE:""} + clusterNodes: ${SW_STORAGE_ES_CLUSTER_NODES:elasticsearch:9200} + indexShardsNumber: ${SW_STORAGE_ES_INDEX_SHARDS_NUMBER:2} + indexReplicasNumber: ${SW_STORAGE_ES_INDEX_REPLICAS_NUMBER:0} + # Batch process setting, refer to https://www.elastic.co/guide/en/elasticsearch/client/java-api/5.5/java-docs-bulk-processor.html + bulkActions: ${SW_STORAGE_ES_BULK_ACTIONS:2000} # Execute the bulk every 2000 requests + bulkSize: ${SW_STORAGE_ES_BULK_SIZE:20} # flush the bulk every 20mb + flushInterval: ${SW_STORAGE_ES_FLUSH_INTERVAL:10} # flush the bulk every 10 seconds whatever the number of requests + concurrentRequests: ${SW_STORAGE_ES_CONCURRENT_REQUESTS:2} # the number of concurrent requests +# h2: +# driver: ${SW_STORAGE_H2_DRIVER:org.h2.jdbcx.JdbcDataSource} +# url: ${SW_STORAGE_H2_URL:jdbc:h2:mem:skywalking-oap-db} +# user: ${SW_STORAGE_H2_USER:sa} +# mysql: +receiver-register: + default: +receiver-trace: + default: + bufferPath: ${SW_RECEIVER_BUFFER_PATH:../trace-buffer/} # Path to trace buffer files, suggest to use absolute path + bufferOffsetMaxFileSize: ${SW_RECEIVER_BUFFER_OFFSET_MAX_FILE_SIZE:100} # Unit is MB + bufferDataMaxFileSize: ${SW_RECEIVER_BUFFER_DATA_MAX_FILE_SIZE:500} # Unit is MB + bufferFileCleanWhenRestart: ${SW_RECEIVER_BUFFER_FILE_CLEAN_WHEN_RESTART:false} + sampleRate: ${SW_TRACE_SAMPLE_RATE:10000} # The sample rate precision is 1/10000. 10000 means 100% sample in default. +receiver-jvm: + default: +service-mesh: + default: + bufferPath: ${SW_SERVICE_MESH_BUFFER_PATH:../mesh-buffer/} # Path to trace buffer files, suggest to use absolute path + bufferOffsetMaxFileSize: ${SW_SERVICE_MESH_OFFSET_MAX_FILE_SIZE:100} # Unit is MB + bufferDataMaxFileSize: ${SW_SERVICE_MESH_BUFFER_DATA_MAX_FILE_SIZE:500} # Unit is MB + bufferFileCleanWhenRestart: ${SW_SERVICE_MESH_BUFFER_FILE_CLEAN_WHEN_RESTART:false} +istio-telemetry: + default: +#receiver_zipkin: +# default: +# host: ${SW_RECEIVER_ZIPKIN_HOST:0.0.0.0} +# port: ${SW_RECEIVER_ZIPKIN_PORT:9411} +# contextPath: ${SW_RECEIVER_ZIPKIN_CONTEXT_PATH:/} +query: + graphql: + path: ${SW_QUERY_GRAPHQL_PATH:/graphql} +alarm: + default: +telemetry: + prometheus: diff --git a/6/6.0-GA/compose/config/component-libraries.yml b/6/6.0-GA/compose/config/component-libraries.yml new file mode 100644 index 0000000..4fdf028 --- /dev/null +++ b/6/6.0-GA/compose/config/component-libraries.yml @@ -0,0 +1,295 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Define all component libraries' names and IDs, used in monitored application. +# This is a bothway mapping, agent or SDK could use the value(ID) to represent the component name in uplink data. +# +# ###### +# id +# ###### +# We highly recommend DO NOT change the IDs in these file, just append new one, and make sure the ID unique. +# Any replacement will cause visualization and aggregation error. +# +# All IDs in this files are reserved, even some IDs removed by some reasons, those IDs will be abandoned. +# +# ###### +# languages +# ###### +# Languages declare which languages are using this component. Multi languages should be separated by `,` + +Tomcat: + id: 1 + languages: Java +HttpClient: + id: 2 + languages: Java,C#,Node.js +Dubbo: + id: 3 + languages: Java +H2: + id: 4 + languages: Java +Mysql: + id: 5 + languages: Java,C#,Node.js +ORACLE: + id: 6 + languages: Java +Redis: + id: 7 + languages: Java,C#,Node.js +Motan: + id: 8 + languages: Java +MongoDB: + id: 9 + languages: Java,C#,Node.js +Resin: + id: 10 + languages: Java +Feign: + id: 11 + languages: Java +OKHttp: + id: 12 + languages: Java +SpringRestTemplate: + id: 13 + languages: Java +SpringMVC: + id: 14 + languages: Java +Struts2: + id: 15 + languages: Java +NutzMVC: + id: 16 + languages: Java +NutzHttp: + id: 17 + languages: Java +JettyClient: + id: 18 + languages: Java +JettyServer: + id: 19 + languages: Java +Memcached: + id: 20 + languages: Java +ShardingJDBC: + id: 21 + languages: Java +PostgreSQL: + id: 22 + languages: Java,C#,Node.js +GRPC: + id: 23 + languages: Java +ElasticJob: + id: 24 + languages: Java +RocketMQ: + id: 25 + languages: Java +httpasyncclient: + id: 26 + languages: Java +Kafka: + id: 27 + languages: Java +ServiceComb: + id: 28 + languages: Java +Hystrix: + id: 29 + languages: Java +Jedis: + id: 30 + languages: Java +SQLite: + id: 31 + languages: Java,C# +h2-jdbc-driver: + id: 32 + languages: Java +mysql-connector-java: + id: 33 + languages: Java +ojdbc: + id: 34 + languages: Java +Spymemcached: + id: 35 + languages: Java +Xmemcached: + id: 36 + languages: Java +postgresql-jdbc-driver: + id: 37 + languages: Java +rocketMQ-producer: + id: 38 + languages: Java +rocketMQ-consumer: + id: 39 + languages: Java +kafka-producer: + id: 40 + languages: Java +kafka-consumer: + id: 41 + languages: Java +mongodb-driver: + id: 42 + languages: Java +SOFARPC: + id: 43 + languages: Java +ActiveMQ: + id: 44 + languages: Java +activemq-producer: + id: 45 + languages: Java +activemq-consumer: + id: 46 + languages: Java +Elasticsearch: + id: 47 + languages: Java +transport-client: + id: 48 + languages: Java +http: + id: 49 + languages: Java,C#,Node.js +rpc: + id: 50 + languages: Java,C#,Node.js +RabbitMQ: + id: 51 + languages: Java +rabbitmq-producer: + id: 52 + languages: Java +rabbitmq-consumer: + id: 53 + languages: Java +Canal: + id: 54 + languages: Java +Gson: + id: 55 + languages: Java +Redisson: + id: 56 + languages: Java + + +# .NET/.NET Core components +# [3000, 4000) for C#/.NET only +AspNetCore: + id: 3001 + languages: C# +EntityFrameworkCore: + id: 3002 + languages: C# +SqlClient: + id: 3003 + languages: C# +CAP: + id: 3004 + languages: C# +StackExchange.Redis: + id: 3005 + languages: C# +SqlServer: + id: 3006 + languages: C# +Npgsql: + id: 3007 + languages: C# +MySqlConnector: + id: 3008 + languages: C# +EntityFrameworkCore.InMemory: + id: 3009 + languages: C# +EntityFrameworkCore.SqlServer: + id: 3010 + languages: C# +EntityFrameworkCore.Sqlite: + id: 3011 + languages: C# +Pomelo.EntityFrameworkCore.MySql: + id: 3012 + languages: C# +Npgsql.EntityFrameworkCore.PostgreSQL: + id: 3013 + languages: C# +InMemoryDatabase: + id: 3014 + languages: C# +AspNet: + id: 3015 + languages: C# + +# NoeJS components +# [4000, 5000) for Node.js agent +HttpServer: + id: 4001 + languages: Node.js +express: + id: 4002 + languages: Node.js +Egg: + id: 4003 + languages: Node.js +Koa: + id: 4004 + languages: Node.js + +# Component Server mapping defines the server display names of some components +# e.g. +# Jedis is a client library in Java for Redis server +Component-Server-Mappings: + mongodb-driver: MongoDB + rocketMQ-producer: RocketMQ + rocketMQ-consumer: RocketMQ + kafka-producer: Kafka + kafka-consumer: Kafka + activemq-producer: ActiveMQ + activemq-consumer: ActiveMQ + rabbitmq-producer: RabbitMQ + rabbitmq-consumer: RabbitMQ + postgresql-jdbc-driver: PostgreSQL + Xmemcached: Memcached + Spymemcached: Memcached + h2-jdbc-driver: H2 + mysql-connector-java: Mysql + Jedis: Redis + StackExchange.Redis: Redis + Redisson: Redis + SqlClient: SqlServer + Npgsql: PostgreSQL + MySqlConnector: Mysql + EntityFrameworkCore.InMemory: InMemoryDatabase + EntityFrameworkCore.SqlServer: SqlServer + EntityFrameworkCore.Sqlite: SQLite + Pomelo.EntityFrameworkCore.MySql: Mysql + Npgsql.EntityFrameworkCore.PostgreSQL: PostgreSQL + transport-client: Elasticsearch diff --git a/6/6.0-GA/compose/config/datasource-settings.properties b/6/6.0-GA/compose/config/datasource-settings.properties new file mode 100644 index 0000000..70b0099 --- /dev/null +++ b/6/6.0-GA/compose/config/datasource-settings.properties @@ -0,0 +1,31 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# + +jdbcUrl=jdbc:mysql://localhost:3306/swtest +dataSource.user=root +dataSource.password=root@1234 +dataSource.cachePrepStmts=true +dataSource.prepStmtCacheSize=250 +dataSource.prepStmtCacheSqlLimit=2048 +dataSource.useServerPrepStmts=true +dataSource.useLocalSessionState=true +dataSource.rewriteBatchedStatements=true +dataSource.cacheResultSetMetadata=true +dataSource.cacheServerConfiguration=true +dataSource.elideSetAutoCommits=true +dataSource.maintainTimeStats=false \ No newline at end of file diff --git a/6/6.0-GA/compose/config/log4j2.xml b/6/6.0-GA/compose/config/log4j2.xml new file mode 100644 index 0000000..c2439b6 --- /dev/null +++ b/6/6.0-GA/compose/config/log4j2.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/6/6.0-GA/compose/docker-compose.yml b/6/6.0-GA/compose/docker-compose.yml new file mode 100644 index 0000000..51fcc31 --- /dev/null +++ b/6/6.0-GA/compose/docker-compose.yml @@ -0,0 +1,53 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +version: '3.3' +services: + elasticsearch: + image: docker.elastic.co/elasticsearch/elasticsearch:6.3.2 + container_name: elasticsearch + restart: always + ports: + - 9200:9200 + - 9300:9300 + environment: + discovery.type: single-node + oap: + image: skywalking/oap:6.0.0-GA + container_name: oap + depends_on: + - elasticsearch + links: + - elasticsearch + restart: always + ports: + - 11800:11800 + - 12800:12800 + volumes: + - ./config:/skywalking/config:ro + ui: + image: skywalking/ui:6.0.0-GA + container_name: ui + depends_on: + - oap + links: + - oap + restart: always + ports: + - 8080:8080 + environment: + collector.ribbon.listOfServers: oap:12800 + collector.ribbon.ReadTimeout: 20000 diff --git a/6/6.0-GA/oap/Dockerfile b/6/6.0-GA/oap/Dockerfile new file mode 100644 index 0000000..172b29e --- /dev/null +++ b/6/6.0-GA/oap/Dockerfile @@ -0,0 +1,37 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +FROM skywalking/base:6.0.0-GA + +LABEL maintainer="hanahmily@apache.org" + +ENV SKYWALKING_HOME=/skywalking \ + JAVA_OPTS=" -Xms256M -Xmx512M" + +WORKDIR $SKYWALKING_HOME + +RUN set -eux; \ + apk add --no-cache --virtual \ + bash; \ + rm -rf "config/log4j2.xml"; \ + rm -rf "webapp"; rm -rf "agent"; + +COPY log4j2.xml config/ +COPY docker-entrypoint.sh . + +EXPOSE 12800 11800 + +ENTRYPOINT ["sh", "docker-entrypoint.sh"] \ No newline at end of file diff --git a/6/6.0-GA/oap/docker-entrypoint.sh b/6/6.0-GA/oap/docker-entrypoint.sh new file mode 100644 index 0000000..f3f19e0 --- /dev/null +++ b/6/6.0-GA/oap/docker-entrypoint.sh @@ -0,0 +1,28 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +#!/bin/bash + +set -ex + +CLASSPATH="config:$CLASSPATH" +for i in oap-libs/*.jar +do + CLASSPATH="$i:$CLASSPATH" +done + +exec java ${JAVA_OPTS} -classpath $CLASSPATH \ + org.apache.skywalking.oap.server.starter.OAPServerStartUp "$@" \ No newline at end of file diff --git a/6/6.0-GA/oap/log4j2.xml b/6/6.0-GA/oap/log4j2.xml new file mode 100644 index 0000000..b1f1818 --- /dev/null +++ b/6/6.0-GA/oap/log4j2.xml @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/6/6.0-GA/ui/Dockerfile b/6/6.0-GA/ui/Dockerfile new file mode 100644 index 0000000..cc7f245 --- /dev/null +++ b/6/6.0-GA/ui/Dockerfile @@ -0,0 +1,37 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +FROM skywalking/base:6.0.0-GA + +LABEL maintainer="hanahmily@apache.org" + +ENV SKYWALKING_HOME=/skywalking \ + JAVA_OPTS=" -Xms256M -Xmx512M" + +WORKDIR $SKYWALKING_HOME + +RUN set -eux; \ + apk add --no-cache --virtual \ + bash; \ + rm -rf "config"; rm -rf "oap-libs"; \ + rm -rf "agent"; + +COPY docker-entrypoint.sh . +COPY logback.xml webapp/ + +EXPOSE 8080 + +ENTRYPOINT ["sh", "docker-entrypoint.sh"] \ No newline at end of file diff --git a/6/6.0-GA/ui/docker-entrypoint.sh b/6/6.0-GA/ui/docker-entrypoint.sh new file mode 100644 index 0000000..2a857b7 --- /dev/null +++ b/6/6.0-GA/ui/docker-entrypoint.sh @@ -0,0 +1,21 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +#!/bin/bash + +set -ex + +exec java -jar webapp/skywalking-webapp.jar --logging.config=webapp/logback.xml "$@" \ No newline at end of file diff --git a/6/6.0-GA/ui/logback.xml b/6/6.0-GA/ui/logback.xml new file mode 100644 index 0000000..834036d --- /dev/null +++ b/6/6.0-GA/ui/logback.xml @@ -0,0 +1,21 @@ + + + + + \ No newline at end of file -- GitLab