kezhenxu94 commented on a change in pull request #4514: Add selector property 
in application.yml
URL: https://github.com/apache/skywalking/pull/4514#discussion_r392665385
 
 

 ##########
 File path: docker/oap-es7/docker-entrypoint.sh
 ##########
 @@ -18,478 +18,18 @@
 
 set -e
 
-var_application_file="config/application.yml"
-
-generateClusterStandalone() {
-    echo "cluster:" >> ${var_application_file}
-    echo "  standalone:" >> ${var_application_file}
-}
-
-generateClusterZookeeper() {
-    cat <<EOT >> ${var_application_file}
-cluster:
-  zookeeper:
-    nameSpace: \${SW_NAMESPACE:""}
-    hostPort: \${SW_CLUSTER_ZK_HOST_PORT:zookeeper: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
-    # Enable ACL
-    enableACL: \${SW_ZK_ENABLE_ACL:false} # disable ACL in default
-    schema: \${SW_ZK_SCHEMA:digest} # only support digest schema
-    expression: \${SW_ZK_EXPRESSION:skywalking:skywalking}
-EOT
-}
-
-generateClusterK8s() {
-    cat <<EOT >> ${var_application_file}
-cluster:
-  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}
-EOT
-}
-
-generateClusterConsul() {
-     cat <<EOT >> ${var_application_file}
-cluster:
-  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:consul:8500}
-EOT
-}
-
-generateClusterEtcd() {
-    cat <<EOT >> ${var_application_file}
-cluster:
-  etcd:
-    serviceName: \${SW_SERVICE_NAME:"SkyWalking_OAP_Cluster"}
-    # Etcd cluster nodes, example: 10.0.0.1:2379,10.0.0.2:2379,10.0.0.3:2379
-    hostPort: \${SW_CLUSTER_ETCD_HOST_PORT:etcd:2379}
-EOT
-}
-
-generateClusterNacos() {
-    cat <<EOT >> ${var_application_file}
-cluster:
-  nacos:
-    serviceName: \${SW_SERVICE_NAME:"SkyWalking_OAP_Cluster"}
-    namespace: \${SW_CLUSTER_NACOS_NAMESPACE:""}
-    hostPort: \${SW_CLUSTER_NACOS_HOST_PORT:nacos:8848}
-EOT
-}
+echo "[Entrypoint] Apache SkyWalking Docker Image"
 
-generateStorageElastisearch() {
-if [[ "$SW_RECEIVER_ZIPKIN_ENABLED" = "true" ]]; then
-    cat <<EOT >> ${var_application_file}
-storage:
-  zipkin-elasticsearch:
-EOT
-elif [[ "$SW_RECEIVER_JAEGER_ENABLED" = "true" ]]; then
-    cat <<EOT >> ${var_application_file}
-storage:
-  jaeger-elasticsearch:
-EOT
-else
-    cat <<EOT >> ${var_application_file}
-storage:
-  elasticsearch7:
-EOT
+if [[ "$SW_TELEMETRY" = "so11y" ]]; then
+    export SW_RECEIVER_SO11Y=default
+    echo "Set SW_RECEIVER_SO11Y to ${SW_RECEIVER_SO11Y}"
 fi
-cat <<EOT >> ${var_application_file}
-    nameSpace: \${SW_NAMESPACE:""}
-    clusterNodes: \${SW_STORAGE_ES_CLUSTER_NODES:localhost:9200}
-    protocol: \${SW_STORAGE_ES_HTTP_PROTOCOL:"http"}
-    user: \${SW_ES_USER:""}
-    password: \${SW_ES_PASSWORD:""}
-    indexShardsNumber: \${SW_STORAGE_ES_INDEX_SHARDS_NUMBER:2}
-    indexReplicasNumber: \${SW_STORAGE_ES_INDEX_REPLICAS_NUMBER:0}
-    # Those data TTL settings will override the same settings in core module.
-    recordDataTTL: \${SW_STORAGE_ES_RECORD_DATA_TTL:7} # Unit is day
-    otherMetricsDataTTL: \${SW_STORAGE_ES_OTHER_METRIC_DATA_TTL:45} # Unit is 
day
-    monthMetricsDataTTL: \${SW_STORAGE_ES_MONTH_METRIC_DATA_TTL:18} # Unit is 
month
-    # 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
-    resultWindowMaxSize: \${SW_STORAGE_ES_QUERY_MAX_WINDOW_SIZE:10000}
-    metadataQueryMaxSize: \${SW_STORAGE_ES_QUERY_MAX_SIZE:5000}
-    segmentQueryMaxSize: \${SW_STORAGE_ES_QUERY_SEGMENT_SIZE:200}
-EOT
-}
-
-generateStorageH2() {
-    cat <<EOT >> ${var_application_file}
-storage:
-  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}
-    metadataQueryMaxSize: \${SW_STORAGE_H2_QUERY_MAX_SIZE:5000}
-EOT
-}
-
-generateStorageMySQL() {
-    cat <<EOT >> ${var_application_file}
-storage:
-  mysql:
-    properties:
-        jdbcUrl: ${SW_JDBC_URL:"jdbc:mysql://localhost:3306/swtest"}
-        dataSource.user: ${SW_DATA_SOURCE_USER:root}
-        dataSource.password: ${SW_DATA_SOURCE_PASSWORD:root@1234}
-        dataSource.cachePrepStmts: ${SW_DATA_SOURCE_CACHE_PREP_STMTS:true}
-        dataSource.prepStmtCacheSize: 
${SW_DATA_SOURCE_PREP_STMT_CACHE_SQL_SIZE:250}
-        dataSource.prepStmtCacheSqlLimit: 
${SW_DATA_SOURCE_PREP_STMT_CACHE_SQL_LIMIT:2048}
-        dataSource.useServerPrepStmts: 
${SW_DATA_SOURCE_USE_SERVER_PREP_STMTS:true}
-    metadataQueryMaxSize: \${SW_STORAGE_MYSQL_QUERY_MAX_SIZE:5000}
-EOT
-}
-
-generateStorageInfluxDB() {
-    cat <<EOT >> ${var_application_file}
-storage:
-  influx:
-    # Metadata storage provider configuration
-    metabaseType: \${SW_STORAGE_METABASE_TYPE:H2} # There are 2 options as 
Metabase provider, H2 or MySQL.
-    h2Props:
-      dataSourceClassName: 
\${SW_STORAGE_METABASE_DRIVER:org.h2.jdbcx.JdbcDataSource}
-      dataSource.url: \${SW_STORAGE_METABASE_URL:jdbc:h2:mem:skywalking-oap-db}
-      dataSource.user: \${SW_STORAGE_METABASE_USER:sa}
-      dataSource.password: \${SW_STORAGE_METABASE_PASSWORD:}
-    mysqlProps:
-      jdbcUrl: \${SW_STORAGE_METABASE_URL:"jdbc:mysql://localhost:3306/swtest"}
-      dataSource.user: \${SW_STORAGE_METABASE_USER:root}
-      dataSource.password: \${SW_STORAGE_METABASE_PASSWORD:root@1234}
-      dataSource.cachePrepStmts: \${SW_STORAGE_METABASE_CACHE_PREP_STMTS:true}
-      dataSource.prepStmtCacheSize: 
\${SW_STORAGE_METABASE_PREP_STMT_CACHE_SQL_SIZE:250}
-      dataSource.prepStmtCacheSqlLimit: 
\${SW_STORAGE_METABASE_PREP_STMT_CACHE_SQL_LIMIT:2048}
-      dataSource.useServerPrepStmts: 
\${SW_STORAGE_METABASE_USE_SERVER_PREP_STMTS:true}
-    metadataQueryMaxSize: \${SW_STORAGE_METABASE_QUERY_MAX_SIZE:5000}
-    # InfluxDB configuration
-    url: \${SW_STORAGE_INFLUXDB_URL:http://localhost:8086}
-    user: \${SW_STORAGE_INFLUXDB_USER:root}
-    password: \${SW_STORAGE_INFLUXDB_PASSWORD:}
-    database: \${SW_STORAGE_INFLUXDB_DATABASE:skywalking}
-    actions: \${SW_STORAGE_INFLUXDB_ACTIONS:1000} # the number of actions to 
collect
-    duration: \${SW_STORAGE_INFLUXDB_DURATION:1000} # the time to wait at most 
(milliseconds)
-    fetchTaskLogMaxSize: \${SW_STORAGE_INFLUXDB_FETCH_TASK_LOG_MAX_SIZE:5000} 
# the max number of fetch task log in a request
-EOT
-}
-
-generateConfigurationNone() {
-    cat <<EOT >> ${var_application_file}
-configuration:
-  none:
-EOT
-}
-
-generateConfigurationApollo() {
-    cat <<EOT >> ${var_application_file}
-configuration:
-  apollo:
-    apolloMeta: \${SW_CONFIGURATION_APOLLO_META:http://apollo:8080}
-    apolloCluster: \${SW_CONFIGURATION_APOLLO_CLUSTER:default}
-    apolloEnv: \${SW_CONFIGURATION_APOLLO_ENV:""}
-    appId: \${SW_CONFIGURATION_APOLLO_APP_ID:skywalking}
-    period: \${SW_CONFIGURATION_APOLLO_PERIOD:5}
-EOT
-}
-
-generateConfigurationNacos() {
-    cat <<EOT >> ${var_application_file}
-configuration:
-  nacos:
-    # Nacos Server Host
-    serverAddr: \${SW_CONFIGURATION_NACOS_SERVER_ADDR:nacos}
-    # Nacos Server Port
-    port: \${SW_CONFIGURATION_NACOS_PORT:8848}
-    # Nacos Configuration Group
-    group: \${SW_CONFIGURATION_NACOS_GROUP:skywalking}
-    # Nacos Configuration namespace
-    namespace: \${SW_CONFIGURATION_NACOS_NAMESPACE:""}
-    # Unit seconds, sync period. Default fetch every 60 seconds.
-    period : \${SW_CONFIGURATION_NACOS_PERIOD:5}
-    # the name of current cluster, set the name if you want to upstream system 
known.
-    clusterName: \${SW_CONFIGURATION_NACOS_CLUSTER_NAME:default}
-EOT
-}
-
-generateConfigurationZookeeper() {
-    cat <<EOT >> ${var_application_file}
-configuration:
-  zookeeper:
-    period: \${SW_CONFIGURATION_ZOOKEEPER_PERIOD:60} # Unit seconds, sync 
period. Default fetch every 60 seconds.
-    nameSpace: \${SW_CONFIGURATION_ZOOKEEPER_NAMESPACE:/default}
-    hostPort: \${SW_CONFIGURATION_ZOOKEEPER_HOST_PATH:localhost:2181}
-    #Retry Policy
-    baseSleepTimeMs: \${SW_CONFIGURATION_ZOOKEEPER_BASE_SLEEP_TIME_MS:1000} # 
initial amount of time to wait between retries
-    maxRetries: \${SW_CONFIGURATION_ZOOKEEPER_MAX_RETRIES:3}3 # max number of 
times to retry
-EOT
-}
-
-generateConfigurationGRPC() {
-    cat <<EOT >> ${var_application_file}
-configuration:
-  grpc:
-    host: \${SW_CONFIGURATION_GRPC_HOST:127.0.0.1}
-    port: \${SW_CONFIGURATION_GRPC_PORT:9555}
-    period: \${SW_CONFIGURATION_GRPC_PERIOD:60}
-    clusterName: \${SW_CONFIGURATION_GRPC_CLUSTER_NAME:"default"}
-EOT
-}
-
-generateConfigurationConsul() {
-    cat <<EOT >> ${var_application_file}
-configuration:
-  consul:
-    # Consul host and ports, separated by comma, e.g. 1.2.3.4:8500,2.3.4.5:8500
-    hostAndPorts: \${SW_CONFIGURATION_CONSUL_ADDRESS:127.0.0.1:8500}
-    # Sync period in seconds. Defaults to 60 seconds.
-    period: \${SW_CONFIGURATION_CONSUL_PERIOD:60}
-EOT
-}
-
-generateTelemetryNone() {
-    cat <<EOT >> ${var_application_file}
-telemetry:
-  none:
-EOT
-}
-
-generateTelemetryPrometheus() {
-    cat <<EOT >> ${var_application_file}
-telemetry:
-  prometheus:
-    host: \${SW_TELEMETRY_PROMETHEUS_HOST:0.0.0.0}
-    port: \${SW_TELEMETRY_PROMETHEUS_PORT:1234}
-EOT
-}
-
-generateTelemetrySo11y() {
-    cat <<EOT >> ${var_application_file}
-telemetry:
-  so11y:
-    prometheusExporterEnabled: \${SW_TELEMETRY_SO11Y_PROMETHEUS_ENABLED:true}
-    prometheusExporterHost: \${SW_TELEMETRY_PROMETHEUS_HOST:0.0.0.0}
-    prometheusExporterPort: \${SW_TELEMETRY_PROMETHEUS_PORT:1234}
-EOT
-}
-
-validateVariables() {
-    name=$1; value=$2; list=$3
-    valid=false
-    for c in ${list} ; do
-        if [[ "$c" = "$value" ]]; then
-            valid=true
-        fi
-    done
 
-    if ! ${valid}; then
-        echo "Error: $name=$value please specify $name = $list"
-        exit 1
-    fi
-}
-
-generateApplicationYaml() {
-    # validate
-    [[ -z "$SW_CLUSTER" ]] && [[ -z "$SW_STORAGE" ]] && [[ -z 
"$SW_CONFIGURATION" ]] \
-        && [[ -z "$SW_TELEMETRY" ]] \
-        && { echo "Error: please specify \"SW_CLUSTER\" \"SW_STORAGE\" 
\"SW_CONFIGURATION\" \"SW_TELEMETRY\""; exit 1; }
-
-    validateVariables "SW_CLUSTER" "$SW_CLUSTER" "standalone zookeeper 
kubernetes consul etcd nacos"
-
-    validateVariables "SW_STORAGE" "$SW_STORAGE" "elasticsearch h2 mysql 
influxdb"
 
 Review comment:
   FYI @wu-sheng and @hanahmily , here is another bug in the Docker image, with 
this, the docker image for es7 never works

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

Reply via email to