You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@skywalking.apache.org by wu...@apache.org on 2021/02/07 08:44:18 UTC

[skywalking-docker] branch master updated: Reactoring the building procedure (#15)

This is an automated email from the ASF dual-hosted git repository.

wusheng pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/skywalking-docker.git


The following commit(s) were added to refs/heads/master by this push:
     new 3799942  Reactoring the building procedure (#15)
3799942 is described below

commit 3799942e303e8a6b2dbb79b44ffb7a5dc1f94d3b
Author: Gao Hongtao <ha...@gmail.com>
AuthorDate: Sun Feb 7 16:44:12 2021 +0800

    Reactoring the building procedure (#15)
---
 6/6.0-alpha/ui/docker-entrypoint.sh => 8/v8.4.0.sh |   6 +-
 Makefile                                           |  68 ++++++++
 README.md                                          |  47 ++++++
 {6 => archive/6}/6.0-GA/base/Dockerfile            |   0
 {6/6.0-beta => archive/6/6.0-GA}/compose/README.md |   0
 .../6/6.0-GA}/compose/config/alarm-settings.yml    |   0
 .../6}/6.0-GA/compose/config/application.yml       |   0
 .../6.0-GA/compose/config/component-libraries.yml  |   0
 .../compose/config/datasource-settings.properties  |   0
 .../6/6.0-GA}/compose/config/log4j2.xml            |   0
 {6 => archive/6}/6.0-GA/compose/docker-compose.yml |   0
 {6 => archive/6}/6.0-GA/oap/Dockerfile             |   0
 .../6/6.0-GA}/oap/docker-entrypoint.sh             |   0
 {6/6.4 => archive/6/6.0-GA}/oap/log4j2.xml         |   0
 {6 => archive/6}/6.0-GA/ui/Dockerfile              |   0
 .../6/6.0-GA}/ui/docker-entrypoint.sh              |   0
 {8/8.3.0 => archive/6/6.0-GA}/ui/logback.xml       |   0
 {6 => archive/6}/6.0-alpha/base/Dockerfile         |   0
 {6 => archive/6}/6.0-alpha/oap/Dockerfile          |   0
 .../6}/6.0-alpha/oap/docker-entrypoint.sh          |   0
 {6/6.3 => archive/6/6.0-alpha}/oap/log4j2.xml      |   0
 {6 => archive/6}/6.0-alpha/ui/Dockerfile           |   0
 {6 => archive/6}/6.0-alpha/ui/docker-entrypoint.sh |   0
 {8/8.2.0 => archive/6/6.0-alpha}/ui/logback.xml    |   0
 {6 => archive/6}/6.0-beta/base/Dockerfile          |   0
 {6/6.0-GA => archive/6/6.0-beta}/compose/README.md |   0
 .../6/6.0-beta}/compose/config/alarm-settings.yml  |   0
 .../6}/6.0-beta/compose/config/application.yml     |   0
 .../compose/config/component-libraries.yml         |   0
 .../compose/config/datasource-settings.properties  |   0
 .../6/6.0-beta}/compose/config/log4j2.xml          |   0
 .../6}/6.0-beta/compose/docker-compose.yml         |   0
 {6 => archive/6}/6.0-beta/oap/Dockerfile           |   0
 .../6/6.0-beta}/oap/docker-entrypoint.sh           |   0
 {6/6.2 => archive/6/6.0-beta}/oap/log4j2.xml       |   0
 {6 => archive/6}/6.0-beta/ui/Dockerfile            |   0
 .../6/6.0-beta}/ui/docker-entrypoint.sh            |   0
 {8/8.1.0 => archive/6/6.0-beta}/ui/logback.xml     |   0
 {6 => archive/6}/6.1/base/Dockerfile               |   0
 {6 => archive/6}/6.1/compose/docker-compose.yml    |   0
 {6 => archive/6}/6.1/oap/Dockerfile                |   0
 {6 => archive/6}/6.1/oap/README.md                 |   0
 {6 => archive/6}/6.1/oap/docker-entrypoint.sh      |   0
 {6 => archive/6}/6.1/oap/log4j2.xml                |   0
 {6 => archive/6}/6.1/ui/Dockerfile                 |   0
 {6 => archive/6}/6.1/ui/README.md                  |   0
 {8/8.1.0 => archive/6/6.1}/ui/docker-entrypoint.sh |   0
 {8/8.0 => archive/6/6.1}/ui/logback.xml            |   0
 {6 => archive/6}/6.2/base/Dockerfile               |   0
 {6 => archive/6}/6.2/compose/docker-compose.yml    |   0
 {6 => archive/6}/6.2/oap/Dockerfile                |   0
 {6 => archive/6}/6.2/oap/README.md                 |   0
 {6 => archive/6}/6.2/oap/docker-entrypoint.sh      |   0
 {6/6.0-beta => archive/6/6.2}/oap/log4j2.xml       |   0
 {6 => archive/6}/6.2/ui/Dockerfile                 |   0
 {6 => archive/6}/6.2/ui/README.md                  |   0
 {8/8.0 => archive/6/6.2}/ui/docker-entrypoint.sh   |   0
 {8/8.0.1 => archive/6/6.2}/ui/logback.xml          |   0
 {6 => archive/6}/6.3/base/Dockerfile               |   0
 {6 => archive/6}/6.3/compose/docker-compose.yml    |   0
 {6 => archive/6}/6.3/oap/Dockerfile                |   0
 {6 => archive/6}/6.3/oap/README.md                 |   0
 {6/6.4 => archive/6/6.3}/oap/docker-entrypoint.sh  |   0
 {6/6.0-alpha => archive/6/6.3}/oap/log4j2.xml      |   0
 {6 => archive/6}/6.3/ui/Dockerfile                 |   0
 {6 => archive/6}/6.3/ui/README.md                  |   0
 {8/8.0.1 => archive/6/6.3}/ui/docker-entrypoint.sh |   0
 {7/7.0 => archive/6/6.3}/ui/logback.xml            |   0
 {6 => archive/6}/6.4/base/Dockerfile               |   0
 {6 => archive/6}/6.4/compose/docker-compose.yml    |   0
 {6 => archive/6}/6.4/oap/Dockerfile                |   0
 {6 => archive/6}/6.4/oap/README.md                 |   0
 {6/6.3 => archive/6/6.4}/oap/docker-entrypoint.sh  |   0
 {6/6.0-GA => archive/6/6.4}/oap/log4j2.xml         |   0
 {6 => archive/6}/6.4/ui/Dockerfile                 |   0
 {6 => archive/6}/6.4/ui/README.md                  |   0
 {7/7.0 => archive/6/6.4}/ui/docker-entrypoint.sh   |   0
 {6/6.6 => archive/6/6.4}/ui/logback.xml            |   0
 {6 => archive/6}/6.5/base/Dockerfile               |   0
 {6 => archive/6}/6.5/compose/docker-compose.yml    |   0
 {6 => archive/6}/6.5/oap/Dockerfile                |   0
 {6 => archive/6}/6.5/oap/README.md                 |   0
 {6 => archive/6}/6.5/oap/docker-entrypoint.sh      |   0
 {8/8.3.0 => archive/6/6.5}/oap/log4j2.xml          |   0
 {6 => archive/6}/6.5/ui/Dockerfile                 |   0
 {6/6.6 => archive/6/6.5}/ui/README.md              |   0
 {6/6.6 => archive/6/6.5}/ui/docker-entrypoint.sh   |   0
 {6 => archive/6}/6.5/ui/logback.xml                |   0
 {6 => archive/6}/6.6/base-es7/Dockerfile           |   0
 {6 => archive/6}/6.6/base/Dockerfile               |   0
 .../6}/6.6/compose-es7/docker-compose.yml          |   0
 {6 => archive/6}/6.6/compose/docker-compose.yml    |   0
 {6 => archive/6}/6.6/oap-es7/Dockerfile            |   0
 {6 => archive/6}/6.6/oap-es7/README.md             |   0
 {6 => archive/6}/6.6/oap-es7/docker-entrypoint.sh  |   0
 {8/8.3.0 => archive/6/6.6}/oap-es7/log4j2.xml      |   0
 {6 => archive/6}/6.6/oap/Dockerfile                |   0
 {6 => archive/6}/6.6/oap/README.md                 |   0
 {6 => archive/6}/6.6/oap/docker-entrypoint.sh      |   0
 {8/8.2.0 => archive/6/6.6}/oap/log4j2.xml          |   0
 {6 => archive/6}/6.6/ui/Dockerfile                 |   0
 {6/6.5 => archive/6/6.6}/ui/README.md              |   0
 {6/6.5 => archive/6/6.6}/ui/docker-entrypoint.sh   |   0
 {6/6.4 => archive/6/6.6}/ui/logback.xml            |   0
 {7 => archive/7}/7.0/base-es7/Dockerfile           |   0
 {7 => archive/7}/7.0/base/Dockerfile               |   0
 .../7}/7.0/compose-es7/docker-compose.yml          |   0
 {7 => archive/7}/7.0/compose/docker-compose.yml    |   0
 {7 => archive/7}/7.0/oap-es7/Dockerfile            |   0
 {7 => archive/7}/7.0/oap-es7/README.md             |   0
 {7 => archive/7}/7.0/oap-es7/docker-entrypoint.sh  |   0
 {8/8.2.0 => archive/7/7.0}/oap-es7/log4j2.xml      |   0
 {7 => archive/7}/7.0/oap/Dockerfile                |   0
 {7 => archive/7}/7.0/oap/README.md                 |   0
 {7 => archive/7}/7.0/oap/docker-entrypoint.sh      |   0
 {8/8.1.0 => archive/7/7.0}/oap/log4j2.xml          |   0
 {7 => archive/7}/7.0/ui/Dockerfile                 |   0
 {7 => archive/7}/7.0/ui/README.md                  |   0
 {6/6.4 => archive/7/7.0}/ui/docker-entrypoint.sh   |   0
 {6/6.3 => archive/7/7.0}/ui/logback.xml            |   0
 {8 => archive/8}/8.0.1/base-es7/Dockerfile         |   0
 {8 => archive/8}/8.0.1/base/Dockerfile             |   0
 .../8}/8.0.1/compose-es7/docker-compose.yml        |   0
 {8 => archive/8}/8.0.1/compose/docker-compose.yml  |   0
 {8 => archive/8}/8.0.1/oap-es7/Dockerfile          |   0
 {8 => archive/8}/8.0.1/oap-es7/README.md           |   0
 .../8/8.0.1}/oap-es7/docker-entrypoint.sh          |   0
 {8/8.1.0 => archive/8/8.0.1}/oap-es7/log4j2.xml    |   0
 {8 => archive/8}/8.0.1/oap/Dockerfile              |   0
 {8 => archive/8}/8.0.1/oap/README.md               |   0
 .../8/8.0.1}/oap/docker-entrypoint.sh              |   0
 {8/8.0 => archive/8/8.0.1}/oap/log4j2.xml          |   0
 {8 => archive/8}/8.0.1/ui/Dockerfile               |   0
 {8 => archive/8}/8.0.1/ui/README.md                |   0
 {6/6.3 => archive/8/8.0.1}/ui/docker-entrypoint.sh |   0
 {6/6.2 => archive/8/8.0.1}/ui/logback.xml          |   0
 {8 => archive/8}/8.0/base-es7/Dockerfile           |   0
 {8 => archive/8}/8.0/base/Dockerfile               |   0
 .../8}/8.0/compose-es7/docker-compose.yml          |   0
 {8 => archive/8}/8.0/compose/docker-compose.yml    |   0
 {8 => archive/8}/8.0/oap-es7/Dockerfile            |   0
 {8 => archive/8}/8.0/oap-es7/README.md             |   0
 {8 => archive/8}/8.0/oap-es7/docker-entrypoint.sh  |   0
 {8 => archive/8}/8.0/oap-es7/log4j2.xml            |   0
 {8 => archive/8}/8.0/oap/Dockerfile                |   0
 {8 => archive/8}/8.0/oap/README.md                 |   0
 {8 => archive/8}/8.0/oap/docker-entrypoint.sh      |   0
 {8/8.0.1 => archive/8/8.0}/oap/log4j2.xml          |   0
 {8 => archive/8}/8.0/ui/Dockerfile                 |   0
 {8 => archive/8}/8.0/ui/README.md                  |   0
 {6/6.2 => archive/8/8.0}/ui/docker-entrypoint.sh   |   0
 {6/6.1 => archive/8/8.0}/ui/logback.xml            |   0
 {8 => archive/8}/8.1.0/base-es7/Dockerfile         |   0
 {8 => archive/8}/8.1.0/base/Dockerfile             |   0
 .../8}/8.1.0/compose-es7/docker-compose.yml        |   0
 {8 => archive/8}/8.1.0/compose/docker-compose.yml  |   0
 {8 => archive/8}/8.1.0/oap-es7/Dockerfile          |   0
 {8 => archive/8}/8.1.0/oap-es7/README.md           |   0
 .../8/8.1.0}/oap-es7/docker-entrypoint.sh          |   0
 {8/8.0.1 => archive/8/8.1.0}/oap-es7/log4j2.xml    |   0
 {8 => archive/8}/8.1.0/oap/Dockerfile              |   0
 {8 => archive/8}/8.1.0/oap/README.md               |   0
 .../8/8.1.0}/oap/docker-entrypoint.sh              |   0
 {7/7.0 => archive/8/8.1.0}/oap/log4j2.xml          |   0
 {8 => archive/8}/8.1.0/ui/Dockerfile               |   0
 {8 => archive/8}/8.1.0/ui/README.md                |   0
 {6/6.1 => archive/8/8.1.0}/ui/docker-entrypoint.sh |   0
 {6/6.0-beta => archive/8/8.1.0}/ui/logback.xml     |   0
 {8 => archive/8}/8.2.0/base-es7/Dockerfile         |   0
 {8 => archive/8}/8.2.0/base/Dockerfile             |   0
 .../8}/8.2.0/compose-es7/docker-compose.yml        |   0
 {8 => archive/8}/8.2.0/compose/docker-compose.yml  |   0
 {8 => archive/8}/8.2.0/oap-es7/Dockerfile          |   0
 {8 => archive/8}/8.2.0/oap-es7/README.md           |   0
 .../8/8.2.0}/oap-es7/docker-entrypoint.sh          |   0
 {7/7.0 => archive/8/8.2.0}/oap-es7/log4j2.xml      |   0
 {8 => archive/8}/8.2.0/oap/Dockerfile              |   0
 {8 => archive/8}/8.2.0/oap/README.md               |   0
 .../8/8.2.0}/oap/docker-entrypoint.sh              |   0
 {6/6.6 => archive/8/8.2.0}/oap/log4j2.xml          |   0
 {8 => archive/8}/8.2.0/ui/Dockerfile               |   0
 {8 => archive/8}/8.2.0/ui/README.md                |   0
 .../8/8.2.0}/ui/docker-entrypoint.sh               |   0
 {6/6.0-alpha => archive/8/8.2.0}/ui/logback.xml    |   0
 {8 => archive/8}/8.3.0/base-es7/Dockerfile         |   0
 {8 => archive/8}/8.3.0/base/Dockerfile             |   0
 .../8}/8.3.0/compose-es7/docker-compose.yml        |   0
 {8 => archive/8}/8.3.0/compose/docker-compose.yml  |   0
 {8 => archive/8}/8.3.0/oap-es7/Dockerfile          |   0
 {8 => archive/8}/8.3.0/oap-es7/README.md           |   0
 .../8/8.3.0}/oap-es7/docker-entrypoint.sh          |   0
 {6/6.6 => archive/8/8.3.0}/oap-es7/log4j2.xml      |   0
 {8 => archive/8}/8.3.0/oap/Dockerfile              |   0
 {8 => archive/8}/8.3.0/oap/README.md               |   0
 .../8/8.3.0}/oap/docker-entrypoint.sh              |   0
 {6/6.5 => archive/8/8.3.0}/oap/log4j2.xml          |   0
 {8 => archive/8}/8.3.0/ui/Dockerfile               |   0
 {8 => archive/8}/8.3.0/ui/README.md                |   0
 .../8/8.3.0}/ui/docker-entrypoint.sh               |   0
 {6/6.0-GA => archive/8/8.3.0}/ui/logback.xml       |   0
 base/Dockerfile                                    | 177 +++++++++++++++++++++
 .../ui/docker-entrypoint.sh => compose/.env.es6    |   7 +-
 .../ui/docker-entrypoint.sh => compose/.env.es7    |   7 +-
 {8/8.3.0/compose => compose}/docker-compose.yml    |   6 +-
 {8/8.3.0/oap-es7 => oap-server}/Dockerfile         |   8 +-
 {8/8.3.0/oap => oap-server}/README.md              |   0
 .../oap-es7 => oap-server}/docker-entrypoint.sh    |   5 -
 {8/8.3.0/oap => oap-server}/log4j2.xml             |   0
 {8/8.2.0/ui => ui}/Dockerfile                      |   4 +-
 {8/8.3.0/ui => ui}/README.md                       |   0
 {8/8.3.0/ui => ui}/docker-entrypoint.sh            |   0
 {8/8.3.0/ui => ui}/logback.xml                     |   0
 212 files changed, 309 insertions(+), 26 deletions(-)

diff --git a/6/6.0-alpha/ui/docker-entrypoint.sh b/8/v8.4.0.sh
similarity index 88%
copy from 6/6.0-alpha/ui/docker-entrypoint.sh
copy to 8/v8.4.0.sh
index 2a857b7..ae23669 100644
--- a/6/6.0-alpha/ui/docker-entrypoint.sh
+++ b/8/v8.4.0.sh
@@ -14,8 +14,4 @@
 # 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
+export SW_VERSION=8.4.0
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..5df0fd5
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,68 @@
+# 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.
+
+TAG_SUFS := es6 es7
+
+ROOT := $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST))))
+
+D := docker
+DC := docker-compose
+
+BASE_BUILD_TARGETS := $(TAG_SUFS:%=base.%)
+OAP_BUILD_TARGETS := $(TAG_SUFS:%=oap-server.%)
+COMPLEX_BUILD_TARGETS := $(BASE_BUILD_TARGETS) $(OAP_BUILD_TARGETS)
+COMPOSE_TARGETS := $(TAG_SUFS:%=compose.%)
+BUILD_TARGETS := $(COMPLEX_BUILD_TARGETS) ui
+
+word-dot = $(word $2,$(subst ., ,$1))
+
+build: $(BUILD_TARGETS)
+
+$(COMPLEX_BUILD_TARGETS):
+	@echo "Building $@"
+	$(eval repo := $(call word-dot,$@,1))
+	$(eval imgTag := $(call word-dot,$@,2))
+	pushd $(ROOT)/$(repo) \
+	&& $(D) build $(SW_BUILD_ARGS) --build-arg version=$(SW_VERSION) --build-arg tag=$(imgTag) -t apache/skywalking-$(repo):${SW_VERSION}-${imgTag} . \
+	&& popd
+
+ui:
+	@echo "Building ui"
+	pushd $(ROOT)/ui \
+	&& $(D) build $(SW_BUILD_ARGS) --build-arg version=$(SW_VERSION) -t apache/skywalking-ui:$(SW_VERSION) . \
+	&& $(D) tag apache/skywalking-ui:$(SW_VERSION) apache/skywalking-ui:latest \
+	&& popd
+
+$(COMPOSE_TARGETS):
+	@echo "Booting $@"
+	$(eval imgTag := $(subst compose.,,$@))
+	pushd $(ROOT)/compose \
+	&& $(DC) --env-file .env.${imgTag} up \
+	&& popd
+
+$(foreach TGT,$(COMPLEX_BUILD_TARGETS),$(eval push.$(TGT): ;\
+	$(D) push apache/skywalking-$(call word-dot,$(TGT),1):${SW_VERSION}-$(call word-dot,$(TGT),2) ))
+
+push.ui:
+	$(D) push apache/skywalking-ui:$(SW_VERSION) \
+	&& $(D) push  apache/skywalking-ui:latest
+
+PUSH_TARGETS:=
+$(foreach TGT,$(BUILD_TARGETS),$(eval PUSH_TARGETS+=push.$(TGT)))
+
+docker.push: $(PUSH_TARGETS)
+
+.PHONY: $(BUILD_TARGETS) $(COMPOSE_TARGETS) $(PUSH_TARGETS)
diff --git a/README.md b/README.md
index 18d18de..c810c60 100644
--- a/README.md
+++ b/README.md
@@ -17,5 +17,52 @@ The convenience images are published in docker hub.
 - https://hub.docker.com/r/apache/skywalking-ui
 - https://hub.docker.com/r/apache/skywalking-oap-server
 
+# How to build
+
+When the version < `8.4.0`, the release manifests are grouping by their major version number and full version number in `archive`.
+
+From `8.4.0`, issuing follows to build relevant docker images
+
+```sh
+# source 8/v8.4.0.sh if the target version is 8.4.0
+source <major_version>/v<version>.sh
+
+make
+```
+
+# How to publish images
+
+After a SkyWalking's Apache release, composing a new version environment setting script to `<major_version>` folder with the name like `v<version>.sh`
+
+Building images as below:
+
+```sh
+source <major_version>/v<version>.sh
+make
+```
+
+Verifying images:
+
+```sh
+# Booting up a compose of ES6, OAP server and UI
+make compose.es6
+# Booting up a compose of ES7, OAP server and UI
+make compose.es7
+```
+
+Pushing built images to docker hub repos:
+
+```sh
+make docker.push
+```
+
+# How to build images before 8.4.0
+
+The manifests building images before 8.4.0 are archived into `archive` folder.
+
+These "archived" images could not be built by any `make` target, being built manually instead. 
+The approach is that navigating to the target based on the path grouped by SkyWalking release version number
+, then building specific images by `docker build`.
+
 # License
 [Apache 2.0 License.](/LICENSE)
diff --git a/6/6.0-GA/base/Dockerfile b/archive/6/6.0-GA/base/Dockerfile
similarity index 100%
rename from 6/6.0-GA/base/Dockerfile
rename to archive/6/6.0-GA/base/Dockerfile
diff --git a/6/6.0-beta/compose/README.md b/archive/6/6.0-GA/compose/README.md
similarity index 100%
rename from 6/6.0-beta/compose/README.md
rename to archive/6/6.0-GA/compose/README.md
diff --git a/6/6.0-beta/compose/config/alarm-settings.yml b/archive/6/6.0-GA/compose/config/alarm-settings.yml
similarity index 100%
rename from 6/6.0-beta/compose/config/alarm-settings.yml
rename to archive/6/6.0-GA/compose/config/alarm-settings.yml
diff --git a/6/6.0-GA/compose/config/application.yml b/archive/6/6.0-GA/compose/config/application.yml
similarity index 100%
rename from 6/6.0-GA/compose/config/application.yml
rename to archive/6/6.0-GA/compose/config/application.yml
diff --git a/6/6.0-GA/compose/config/component-libraries.yml b/archive/6/6.0-GA/compose/config/component-libraries.yml
similarity index 100%
rename from 6/6.0-GA/compose/config/component-libraries.yml
rename to archive/6/6.0-GA/compose/config/component-libraries.yml
diff --git a/6/6.0-beta/compose/config/datasource-settings.properties b/archive/6/6.0-GA/compose/config/datasource-settings.properties
similarity index 100%
rename from 6/6.0-beta/compose/config/datasource-settings.properties
rename to archive/6/6.0-GA/compose/config/datasource-settings.properties
diff --git a/6/6.0-beta/compose/config/log4j2.xml b/archive/6/6.0-GA/compose/config/log4j2.xml
similarity index 100%
rename from 6/6.0-beta/compose/config/log4j2.xml
rename to archive/6/6.0-GA/compose/config/log4j2.xml
diff --git a/6/6.0-GA/compose/docker-compose.yml b/archive/6/6.0-GA/compose/docker-compose.yml
similarity index 100%
rename from 6/6.0-GA/compose/docker-compose.yml
rename to archive/6/6.0-GA/compose/docker-compose.yml
diff --git a/6/6.0-GA/oap/Dockerfile b/archive/6/6.0-GA/oap/Dockerfile
similarity index 100%
rename from 6/6.0-GA/oap/Dockerfile
rename to archive/6/6.0-GA/oap/Dockerfile
diff --git a/6/6.0-beta/oap/docker-entrypoint.sh b/archive/6/6.0-GA/oap/docker-entrypoint.sh
similarity index 100%
rename from 6/6.0-beta/oap/docker-entrypoint.sh
rename to archive/6/6.0-GA/oap/docker-entrypoint.sh
diff --git a/6/6.4/oap/log4j2.xml b/archive/6/6.0-GA/oap/log4j2.xml
similarity index 100%
rename from 6/6.4/oap/log4j2.xml
rename to archive/6/6.0-GA/oap/log4j2.xml
diff --git a/6/6.0-GA/ui/Dockerfile b/archive/6/6.0-GA/ui/Dockerfile
similarity index 100%
rename from 6/6.0-GA/ui/Dockerfile
rename to archive/6/6.0-GA/ui/Dockerfile
diff --git a/6/6.0-beta/ui/docker-entrypoint.sh b/archive/6/6.0-GA/ui/docker-entrypoint.sh
similarity index 100%
rename from 6/6.0-beta/ui/docker-entrypoint.sh
rename to archive/6/6.0-GA/ui/docker-entrypoint.sh
diff --git a/8/8.3.0/ui/logback.xml b/archive/6/6.0-GA/ui/logback.xml
similarity index 100%
copy from 8/8.3.0/ui/logback.xml
copy to archive/6/6.0-GA/ui/logback.xml
diff --git a/6/6.0-alpha/base/Dockerfile b/archive/6/6.0-alpha/base/Dockerfile
similarity index 100%
rename from 6/6.0-alpha/base/Dockerfile
rename to archive/6/6.0-alpha/base/Dockerfile
diff --git a/6/6.0-alpha/oap/Dockerfile b/archive/6/6.0-alpha/oap/Dockerfile
similarity index 100%
rename from 6/6.0-alpha/oap/Dockerfile
rename to archive/6/6.0-alpha/oap/Dockerfile
diff --git a/6/6.0-alpha/oap/docker-entrypoint.sh b/archive/6/6.0-alpha/oap/docker-entrypoint.sh
similarity index 100%
rename from 6/6.0-alpha/oap/docker-entrypoint.sh
rename to archive/6/6.0-alpha/oap/docker-entrypoint.sh
diff --git a/6/6.3/oap/log4j2.xml b/archive/6/6.0-alpha/oap/log4j2.xml
similarity index 100%
rename from 6/6.3/oap/log4j2.xml
rename to archive/6/6.0-alpha/oap/log4j2.xml
diff --git a/6/6.0-alpha/ui/Dockerfile b/archive/6/6.0-alpha/ui/Dockerfile
similarity index 100%
rename from 6/6.0-alpha/ui/Dockerfile
rename to archive/6/6.0-alpha/ui/Dockerfile
diff --git a/6/6.0-alpha/ui/docker-entrypoint.sh b/archive/6/6.0-alpha/ui/docker-entrypoint.sh
similarity index 100%
copy from 6/6.0-alpha/ui/docker-entrypoint.sh
copy to archive/6/6.0-alpha/ui/docker-entrypoint.sh
diff --git a/8/8.2.0/ui/logback.xml b/archive/6/6.0-alpha/ui/logback.xml
similarity index 100%
rename from 8/8.2.0/ui/logback.xml
rename to archive/6/6.0-alpha/ui/logback.xml
diff --git a/6/6.0-beta/base/Dockerfile b/archive/6/6.0-beta/base/Dockerfile
similarity index 100%
rename from 6/6.0-beta/base/Dockerfile
rename to archive/6/6.0-beta/base/Dockerfile
diff --git a/6/6.0-GA/compose/README.md b/archive/6/6.0-beta/compose/README.md
similarity index 100%
rename from 6/6.0-GA/compose/README.md
rename to archive/6/6.0-beta/compose/README.md
diff --git a/6/6.0-GA/compose/config/alarm-settings.yml b/archive/6/6.0-beta/compose/config/alarm-settings.yml
similarity index 100%
rename from 6/6.0-GA/compose/config/alarm-settings.yml
rename to archive/6/6.0-beta/compose/config/alarm-settings.yml
diff --git a/6/6.0-beta/compose/config/application.yml b/archive/6/6.0-beta/compose/config/application.yml
similarity index 100%
rename from 6/6.0-beta/compose/config/application.yml
rename to archive/6/6.0-beta/compose/config/application.yml
diff --git a/6/6.0-beta/compose/config/component-libraries.yml b/archive/6/6.0-beta/compose/config/component-libraries.yml
similarity index 100%
rename from 6/6.0-beta/compose/config/component-libraries.yml
rename to archive/6/6.0-beta/compose/config/component-libraries.yml
diff --git a/6/6.0-GA/compose/config/datasource-settings.properties b/archive/6/6.0-beta/compose/config/datasource-settings.properties
similarity index 100%
rename from 6/6.0-GA/compose/config/datasource-settings.properties
rename to archive/6/6.0-beta/compose/config/datasource-settings.properties
diff --git a/6/6.0-GA/compose/config/log4j2.xml b/archive/6/6.0-beta/compose/config/log4j2.xml
similarity index 100%
rename from 6/6.0-GA/compose/config/log4j2.xml
rename to archive/6/6.0-beta/compose/config/log4j2.xml
diff --git a/6/6.0-beta/compose/docker-compose.yml b/archive/6/6.0-beta/compose/docker-compose.yml
similarity index 100%
rename from 6/6.0-beta/compose/docker-compose.yml
rename to archive/6/6.0-beta/compose/docker-compose.yml
diff --git a/6/6.0-beta/oap/Dockerfile b/archive/6/6.0-beta/oap/Dockerfile
similarity index 100%
rename from 6/6.0-beta/oap/Dockerfile
rename to archive/6/6.0-beta/oap/Dockerfile
diff --git a/6/6.0-GA/oap/docker-entrypoint.sh b/archive/6/6.0-beta/oap/docker-entrypoint.sh
similarity index 100%
rename from 6/6.0-GA/oap/docker-entrypoint.sh
rename to archive/6/6.0-beta/oap/docker-entrypoint.sh
diff --git a/6/6.2/oap/log4j2.xml b/archive/6/6.0-beta/oap/log4j2.xml
similarity index 100%
rename from 6/6.2/oap/log4j2.xml
rename to archive/6/6.0-beta/oap/log4j2.xml
diff --git a/6/6.0-beta/ui/Dockerfile b/archive/6/6.0-beta/ui/Dockerfile
similarity index 100%
rename from 6/6.0-beta/ui/Dockerfile
rename to archive/6/6.0-beta/ui/Dockerfile
diff --git a/6/6.0-GA/ui/docker-entrypoint.sh b/archive/6/6.0-beta/ui/docker-entrypoint.sh
similarity index 100%
rename from 6/6.0-GA/ui/docker-entrypoint.sh
rename to archive/6/6.0-beta/ui/docker-entrypoint.sh
diff --git a/8/8.1.0/ui/logback.xml b/archive/6/6.0-beta/ui/logback.xml
similarity index 100%
rename from 8/8.1.0/ui/logback.xml
rename to archive/6/6.0-beta/ui/logback.xml
diff --git a/6/6.1/base/Dockerfile b/archive/6/6.1/base/Dockerfile
similarity index 100%
rename from 6/6.1/base/Dockerfile
rename to archive/6/6.1/base/Dockerfile
diff --git a/6/6.1/compose/docker-compose.yml b/archive/6/6.1/compose/docker-compose.yml
similarity index 100%
rename from 6/6.1/compose/docker-compose.yml
rename to archive/6/6.1/compose/docker-compose.yml
diff --git a/6/6.1/oap/Dockerfile b/archive/6/6.1/oap/Dockerfile
similarity index 100%
rename from 6/6.1/oap/Dockerfile
rename to archive/6/6.1/oap/Dockerfile
diff --git a/6/6.1/oap/README.md b/archive/6/6.1/oap/README.md
similarity index 100%
rename from 6/6.1/oap/README.md
rename to archive/6/6.1/oap/README.md
diff --git a/6/6.1/oap/docker-entrypoint.sh b/archive/6/6.1/oap/docker-entrypoint.sh
similarity index 100%
rename from 6/6.1/oap/docker-entrypoint.sh
rename to archive/6/6.1/oap/docker-entrypoint.sh
diff --git a/6/6.1/oap/log4j2.xml b/archive/6/6.1/oap/log4j2.xml
similarity index 100%
rename from 6/6.1/oap/log4j2.xml
rename to archive/6/6.1/oap/log4j2.xml
diff --git a/6/6.1/ui/Dockerfile b/archive/6/6.1/ui/Dockerfile
similarity index 100%
rename from 6/6.1/ui/Dockerfile
rename to archive/6/6.1/ui/Dockerfile
diff --git a/6/6.1/ui/README.md b/archive/6/6.1/ui/README.md
similarity index 100%
rename from 6/6.1/ui/README.md
rename to archive/6/6.1/ui/README.md
diff --git a/8/8.1.0/ui/docker-entrypoint.sh b/archive/6/6.1/ui/docker-entrypoint.sh
similarity index 100%
rename from 8/8.1.0/ui/docker-entrypoint.sh
rename to archive/6/6.1/ui/docker-entrypoint.sh
diff --git a/8/8.0/ui/logback.xml b/archive/6/6.1/ui/logback.xml
similarity index 100%
rename from 8/8.0/ui/logback.xml
rename to archive/6/6.1/ui/logback.xml
diff --git a/6/6.2/base/Dockerfile b/archive/6/6.2/base/Dockerfile
similarity index 100%
rename from 6/6.2/base/Dockerfile
rename to archive/6/6.2/base/Dockerfile
diff --git a/6/6.2/compose/docker-compose.yml b/archive/6/6.2/compose/docker-compose.yml
similarity index 100%
rename from 6/6.2/compose/docker-compose.yml
rename to archive/6/6.2/compose/docker-compose.yml
diff --git a/6/6.2/oap/Dockerfile b/archive/6/6.2/oap/Dockerfile
similarity index 100%
rename from 6/6.2/oap/Dockerfile
rename to archive/6/6.2/oap/Dockerfile
diff --git a/6/6.2/oap/README.md b/archive/6/6.2/oap/README.md
similarity index 100%
rename from 6/6.2/oap/README.md
rename to archive/6/6.2/oap/README.md
diff --git a/6/6.2/oap/docker-entrypoint.sh b/archive/6/6.2/oap/docker-entrypoint.sh
similarity index 100%
rename from 6/6.2/oap/docker-entrypoint.sh
rename to archive/6/6.2/oap/docker-entrypoint.sh
diff --git a/6/6.0-beta/oap/log4j2.xml b/archive/6/6.2/oap/log4j2.xml
similarity index 100%
rename from 6/6.0-beta/oap/log4j2.xml
rename to archive/6/6.2/oap/log4j2.xml
diff --git a/6/6.2/ui/Dockerfile b/archive/6/6.2/ui/Dockerfile
similarity index 100%
rename from 6/6.2/ui/Dockerfile
rename to archive/6/6.2/ui/Dockerfile
diff --git a/6/6.2/ui/README.md b/archive/6/6.2/ui/README.md
similarity index 100%
rename from 6/6.2/ui/README.md
rename to archive/6/6.2/ui/README.md
diff --git a/8/8.0/ui/docker-entrypoint.sh b/archive/6/6.2/ui/docker-entrypoint.sh
similarity index 100%
rename from 8/8.0/ui/docker-entrypoint.sh
rename to archive/6/6.2/ui/docker-entrypoint.sh
diff --git a/8/8.0.1/ui/logback.xml b/archive/6/6.2/ui/logback.xml
similarity index 100%
rename from 8/8.0.1/ui/logback.xml
rename to archive/6/6.2/ui/logback.xml
diff --git a/6/6.3/base/Dockerfile b/archive/6/6.3/base/Dockerfile
similarity index 100%
rename from 6/6.3/base/Dockerfile
rename to archive/6/6.3/base/Dockerfile
diff --git a/6/6.3/compose/docker-compose.yml b/archive/6/6.3/compose/docker-compose.yml
similarity index 100%
rename from 6/6.3/compose/docker-compose.yml
rename to archive/6/6.3/compose/docker-compose.yml
diff --git a/6/6.3/oap/Dockerfile b/archive/6/6.3/oap/Dockerfile
similarity index 100%
rename from 6/6.3/oap/Dockerfile
rename to archive/6/6.3/oap/Dockerfile
diff --git a/6/6.3/oap/README.md b/archive/6/6.3/oap/README.md
similarity index 100%
rename from 6/6.3/oap/README.md
rename to archive/6/6.3/oap/README.md
diff --git a/6/6.4/oap/docker-entrypoint.sh b/archive/6/6.3/oap/docker-entrypoint.sh
similarity index 100%
rename from 6/6.4/oap/docker-entrypoint.sh
rename to archive/6/6.3/oap/docker-entrypoint.sh
diff --git a/6/6.0-alpha/oap/log4j2.xml b/archive/6/6.3/oap/log4j2.xml
similarity index 100%
rename from 6/6.0-alpha/oap/log4j2.xml
rename to archive/6/6.3/oap/log4j2.xml
diff --git a/6/6.3/ui/Dockerfile b/archive/6/6.3/ui/Dockerfile
similarity index 100%
rename from 6/6.3/ui/Dockerfile
rename to archive/6/6.3/ui/Dockerfile
diff --git a/6/6.3/ui/README.md b/archive/6/6.3/ui/README.md
similarity index 100%
rename from 6/6.3/ui/README.md
rename to archive/6/6.3/ui/README.md
diff --git a/8/8.0.1/ui/docker-entrypoint.sh b/archive/6/6.3/ui/docker-entrypoint.sh
similarity index 100%
rename from 8/8.0.1/ui/docker-entrypoint.sh
rename to archive/6/6.3/ui/docker-entrypoint.sh
diff --git a/7/7.0/ui/logback.xml b/archive/6/6.3/ui/logback.xml
similarity index 100%
rename from 7/7.0/ui/logback.xml
rename to archive/6/6.3/ui/logback.xml
diff --git a/6/6.4/base/Dockerfile b/archive/6/6.4/base/Dockerfile
similarity index 100%
rename from 6/6.4/base/Dockerfile
rename to archive/6/6.4/base/Dockerfile
diff --git a/6/6.4/compose/docker-compose.yml b/archive/6/6.4/compose/docker-compose.yml
similarity index 100%
rename from 6/6.4/compose/docker-compose.yml
rename to archive/6/6.4/compose/docker-compose.yml
diff --git a/6/6.4/oap/Dockerfile b/archive/6/6.4/oap/Dockerfile
similarity index 100%
rename from 6/6.4/oap/Dockerfile
rename to archive/6/6.4/oap/Dockerfile
diff --git a/6/6.4/oap/README.md b/archive/6/6.4/oap/README.md
similarity index 100%
rename from 6/6.4/oap/README.md
rename to archive/6/6.4/oap/README.md
diff --git a/6/6.3/oap/docker-entrypoint.sh b/archive/6/6.4/oap/docker-entrypoint.sh
similarity index 100%
rename from 6/6.3/oap/docker-entrypoint.sh
rename to archive/6/6.4/oap/docker-entrypoint.sh
diff --git a/6/6.0-GA/oap/log4j2.xml b/archive/6/6.4/oap/log4j2.xml
similarity index 100%
rename from 6/6.0-GA/oap/log4j2.xml
rename to archive/6/6.4/oap/log4j2.xml
diff --git a/6/6.4/ui/Dockerfile b/archive/6/6.4/ui/Dockerfile
similarity index 100%
rename from 6/6.4/ui/Dockerfile
rename to archive/6/6.4/ui/Dockerfile
diff --git a/6/6.4/ui/README.md b/archive/6/6.4/ui/README.md
similarity index 100%
rename from 6/6.4/ui/README.md
rename to archive/6/6.4/ui/README.md
diff --git a/7/7.0/ui/docker-entrypoint.sh b/archive/6/6.4/ui/docker-entrypoint.sh
similarity index 100%
rename from 7/7.0/ui/docker-entrypoint.sh
rename to archive/6/6.4/ui/docker-entrypoint.sh
diff --git a/6/6.6/ui/logback.xml b/archive/6/6.4/ui/logback.xml
similarity index 100%
rename from 6/6.6/ui/logback.xml
rename to archive/6/6.4/ui/logback.xml
diff --git a/6/6.5/base/Dockerfile b/archive/6/6.5/base/Dockerfile
similarity index 100%
rename from 6/6.5/base/Dockerfile
rename to archive/6/6.5/base/Dockerfile
diff --git a/6/6.5/compose/docker-compose.yml b/archive/6/6.5/compose/docker-compose.yml
similarity index 100%
rename from 6/6.5/compose/docker-compose.yml
rename to archive/6/6.5/compose/docker-compose.yml
diff --git a/6/6.5/oap/Dockerfile b/archive/6/6.5/oap/Dockerfile
similarity index 100%
rename from 6/6.5/oap/Dockerfile
rename to archive/6/6.5/oap/Dockerfile
diff --git a/6/6.5/oap/README.md b/archive/6/6.5/oap/README.md
similarity index 100%
rename from 6/6.5/oap/README.md
rename to archive/6/6.5/oap/README.md
diff --git a/6/6.5/oap/docker-entrypoint.sh b/archive/6/6.5/oap/docker-entrypoint.sh
similarity index 100%
rename from 6/6.5/oap/docker-entrypoint.sh
rename to archive/6/6.5/oap/docker-entrypoint.sh
diff --git a/8/8.3.0/oap/log4j2.xml b/archive/6/6.5/oap/log4j2.xml
similarity index 100%
copy from 8/8.3.0/oap/log4j2.xml
copy to archive/6/6.5/oap/log4j2.xml
diff --git a/6/6.5/ui/Dockerfile b/archive/6/6.5/ui/Dockerfile
similarity index 100%
rename from 6/6.5/ui/Dockerfile
rename to archive/6/6.5/ui/Dockerfile
diff --git a/6/6.6/ui/README.md b/archive/6/6.5/ui/README.md
similarity index 100%
rename from 6/6.6/ui/README.md
rename to archive/6/6.5/ui/README.md
diff --git a/6/6.6/ui/docker-entrypoint.sh b/archive/6/6.5/ui/docker-entrypoint.sh
similarity index 100%
rename from 6/6.6/ui/docker-entrypoint.sh
rename to archive/6/6.5/ui/docker-entrypoint.sh
diff --git a/6/6.5/ui/logback.xml b/archive/6/6.5/ui/logback.xml
similarity index 100%
rename from 6/6.5/ui/logback.xml
rename to archive/6/6.5/ui/logback.xml
diff --git a/6/6.6/base-es7/Dockerfile b/archive/6/6.6/base-es7/Dockerfile
similarity index 100%
rename from 6/6.6/base-es7/Dockerfile
rename to archive/6/6.6/base-es7/Dockerfile
diff --git a/6/6.6/base/Dockerfile b/archive/6/6.6/base/Dockerfile
similarity index 100%
rename from 6/6.6/base/Dockerfile
rename to archive/6/6.6/base/Dockerfile
diff --git a/6/6.6/compose-es7/docker-compose.yml b/archive/6/6.6/compose-es7/docker-compose.yml
similarity index 100%
rename from 6/6.6/compose-es7/docker-compose.yml
rename to archive/6/6.6/compose-es7/docker-compose.yml
diff --git a/6/6.6/compose/docker-compose.yml b/archive/6/6.6/compose/docker-compose.yml
similarity index 100%
rename from 6/6.6/compose/docker-compose.yml
rename to archive/6/6.6/compose/docker-compose.yml
diff --git a/6/6.6/oap-es7/Dockerfile b/archive/6/6.6/oap-es7/Dockerfile
similarity index 100%
rename from 6/6.6/oap-es7/Dockerfile
rename to archive/6/6.6/oap-es7/Dockerfile
diff --git a/6/6.6/oap-es7/README.md b/archive/6/6.6/oap-es7/README.md
similarity index 100%
rename from 6/6.6/oap-es7/README.md
rename to archive/6/6.6/oap-es7/README.md
diff --git a/6/6.6/oap-es7/docker-entrypoint.sh b/archive/6/6.6/oap-es7/docker-entrypoint.sh
similarity index 100%
rename from 6/6.6/oap-es7/docker-entrypoint.sh
rename to archive/6/6.6/oap-es7/docker-entrypoint.sh
diff --git a/8/8.3.0/oap-es7/log4j2.xml b/archive/6/6.6/oap-es7/log4j2.xml
similarity index 100%
rename from 8/8.3.0/oap-es7/log4j2.xml
rename to archive/6/6.6/oap-es7/log4j2.xml
diff --git a/6/6.6/oap/Dockerfile b/archive/6/6.6/oap/Dockerfile
similarity index 100%
rename from 6/6.6/oap/Dockerfile
rename to archive/6/6.6/oap/Dockerfile
diff --git a/6/6.6/oap/README.md b/archive/6/6.6/oap/README.md
similarity index 100%
rename from 6/6.6/oap/README.md
rename to archive/6/6.6/oap/README.md
diff --git a/6/6.6/oap/docker-entrypoint.sh b/archive/6/6.6/oap/docker-entrypoint.sh
similarity index 100%
rename from 6/6.6/oap/docker-entrypoint.sh
rename to archive/6/6.6/oap/docker-entrypoint.sh
diff --git a/8/8.2.0/oap/log4j2.xml b/archive/6/6.6/oap/log4j2.xml
similarity index 100%
rename from 8/8.2.0/oap/log4j2.xml
rename to archive/6/6.6/oap/log4j2.xml
diff --git a/6/6.6/ui/Dockerfile b/archive/6/6.6/ui/Dockerfile
similarity index 100%
rename from 6/6.6/ui/Dockerfile
rename to archive/6/6.6/ui/Dockerfile
diff --git a/6/6.5/ui/README.md b/archive/6/6.6/ui/README.md
similarity index 100%
rename from 6/6.5/ui/README.md
rename to archive/6/6.6/ui/README.md
diff --git a/6/6.5/ui/docker-entrypoint.sh b/archive/6/6.6/ui/docker-entrypoint.sh
similarity index 100%
rename from 6/6.5/ui/docker-entrypoint.sh
rename to archive/6/6.6/ui/docker-entrypoint.sh
diff --git a/6/6.4/ui/logback.xml b/archive/6/6.6/ui/logback.xml
similarity index 100%
rename from 6/6.4/ui/logback.xml
rename to archive/6/6.6/ui/logback.xml
diff --git a/7/7.0/base-es7/Dockerfile b/archive/7/7.0/base-es7/Dockerfile
similarity index 100%
rename from 7/7.0/base-es7/Dockerfile
rename to archive/7/7.0/base-es7/Dockerfile
diff --git a/7/7.0/base/Dockerfile b/archive/7/7.0/base/Dockerfile
similarity index 100%
rename from 7/7.0/base/Dockerfile
rename to archive/7/7.0/base/Dockerfile
diff --git a/7/7.0/compose-es7/docker-compose.yml b/archive/7/7.0/compose-es7/docker-compose.yml
similarity index 100%
rename from 7/7.0/compose-es7/docker-compose.yml
rename to archive/7/7.0/compose-es7/docker-compose.yml
diff --git a/7/7.0/compose/docker-compose.yml b/archive/7/7.0/compose/docker-compose.yml
similarity index 100%
rename from 7/7.0/compose/docker-compose.yml
rename to archive/7/7.0/compose/docker-compose.yml
diff --git a/7/7.0/oap-es7/Dockerfile b/archive/7/7.0/oap-es7/Dockerfile
similarity index 100%
rename from 7/7.0/oap-es7/Dockerfile
rename to archive/7/7.0/oap-es7/Dockerfile
diff --git a/7/7.0/oap-es7/README.md b/archive/7/7.0/oap-es7/README.md
similarity index 100%
rename from 7/7.0/oap-es7/README.md
rename to archive/7/7.0/oap-es7/README.md
diff --git a/7/7.0/oap-es7/docker-entrypoint.sh b/archive/7/7.0/oap-es7/docker-entrypoint.sh
similarity index 100%
rename from 7/7.0/oap-es7/docker-entrypoint.sh
rename to archive/7/7.0/oap-es7/docker-entrypoint.sh
diff --git a/8/8.2.0/oap-es7/log4j2.xml b/archive/7/7.0/oap-es7/log4j2.xml
similarity index 100%
rename from 8/8.2.0/oap-es7/log4j2.xml
rename to archive/7/7.0/oap-es7/log4j2.xml
diff --git a/7/7.0/oap/Dockerfile b/archive/7/7.0/oap/Dockerfile
similarity index 100%
rename from 7/7.0/oap/Dockerfile
rename to archive/7/7.0/oap/Dockerfile
diff --git a/7/7.0/oap/README.md b/archive/7/7.0/oap/README.md
similarity index 100%
rename from 7/7.0/oap/README.md
rename to archive/7/7.0/oap/README.md
diff --git a/7/7.0/oap/docker-entrypoint.sh b/archive/7/7.0/oap/docker-entrypoint.sh
similarity index 100%
rename from 7/7.0/oap/docker-entrypoint.sh
rename to archive/7/7.0/oap/docker-entrypoint.sh
diff --git a/8/8.1.0/oap/log4j2.xml b/archive/7/7.0/oap/log4j2.xml
similarity index 100%
rename from 8/8.1.0/oap/log4j2.xml
rename to archive/7/7.0/oap/log4j2.xml
diff --git a/7/7.0/ui/Dockerfile b/archive/7/7.0/ui/Dockerfile
similarity index 100%
rename from 7/7.0/ui/Dockerfile
rename to archive/7/7.0/ui/Dockerfile
diff --git a/7/7.0/ui/README.md b/archive/7/7.0/ui/README.md
similarity index 100%
rename from 7/7.0/ui/README.md
rename to archive/7/7.0/ui/README.md
diff --git a/6/6.4/ui/docker-entrypoint.sh b/archive/7/7.0/ui/docker-entrypoint.sh
similarity index 100%
rename from 6/6.4/ui/docker-entrypoint.sh
rename to archive/7/7.0/ui/docker-entrypoint.sh
diff --git a/6/6.3/ui/logback.xml b/archive/7/7.0/ui/logback.xml
similarity index 100%
rename from 6/6.3/ui/logback.xml
rename to archive/7/7.0/ui/logback.xml
diff --git a/8/8.0.1/base-es7/Dockerfile b/archive/8/8.0.1/base-es7/Dockerfile
similarity index 100%
rename from 8/8.0.1/base-es7/Dockerfile
rename to archive/8/8.0.1/base-es7/Dockerfile
diff --git a/8/8.0.1/base/Dockerfile b/archive/8/8.0.1/base/Dockerfile
similarity index 100%
rename from 8/8.0.1/base/Dockerfile
rename to archive/8/8.0.1/base/Dockerfile
diff --git a/8/8.0.1/compose-es7/docker-compose.yml b/archive/8/8.0.1/compose-es7/docker-compose.yml
similarity index 100%
rename from 8/8.0.1/compose-es7/docker-compose.yml
rename to archive/8/8.0.1/compose-es7/docker-compose.yml
diff --git a/8/8.0.1/compose/docker-compose.yml b/archive/8/8.0.1/compose/docker-compose.yml
similarity index 100%
rename from 8/8.0.1/compose/docker-compose.yml
rename to archive/8/8.0.1/compose/docker-compose.yml
diff --git a/8/8.0.1/oap-es7/Dockerfile b/archive/8/8.0.1/oap-es7/Dockerfile
similarity index 100%
rename from 8/8.0.1/oap-es7/Dockerfile
rename to archive/8/8.0.1/oap-es7/Dockerfile
diff --git a/8/8.0.1/oap-es7/README.md b/archive/8/8.0.1/oap-es7/README.md
similarity index 100%
rename from 8/8.0.1/oap-es7/README.md
rename to archive/8/8.0.1/oap-es7/README.md
diff --git a/8/8.1.0/oap-es7/docker-entrypoint.sh b/archive/8/8.0.1/oap-es7/docker-entrypoint.sh
similarity index 100%
rename from 8/8.1.0/oap-es7/docker-entrypoint.sh
rename to archive/8/8.0.1/oap-es7/docker-entrypoint.sh
diff --git a/8/8.1.0/oap-es7/log4j2.xml b/archive/8/8.0.1/oap-es7/log4j2.xml
similarity index 100%
rename from 8/8.1.0/oap-es7/log4j2.xml
rename to archive/8/8.0.1/oap-es7/log4j2.xml
diff --git a/8/8.0.1/oap/Dockerfile b/archive/8/8.0.1/oap/Dockerfile
similarity index 100%
rename from 8/8.0.1/oap/Dockerfile
rename to archive/8/8.0.1/oap/Dockerfile
diff --git a/8/8.0.1/oap/README.md b/archive/8/8.0.1/oap/README.md
similarity index 100%
rename from 8/8.0.1/oap/README.md
rename to archive/8/8.0.1/oap/README.md
diff --git a/8/8.1.0/oap/docker-entrypoint.sh b/archive/8/8.0.1/oap/docker-entrypoint.sh
similarity index 100%
rename from 8/8.1.0/oap/docker-entrypoint.sh
rename to archive/8/8.0.1/oap/docker-entrypoint.sh
diff --git a/8/8.0/oap/log4j2.xml b/archive/8/8.0.1/oap/log4j2.xml
similarity index 100%
rename from 8/8.0/oap/log4j2.xml
rename to archive/8/8.0.1/oap/log4j2.xml
diff --git a/8/8.0.1/ui/Dockerfile b/archive/8/8.0.1/ui/Dockerfile
similarity index 100%
rename from 8/8.0.1/ui/Dockerfile
rename to archive/8/8.0.1/ui/Dockerfile
diff --git a/8/8.0.1/ui/README.md b/archive/8/8.0.1/ui/README.md
similarity index 100%
rename from 8/8.0.1/ui/README.md
rename to archive/8/8.0.1/ui/README.md
diff --git a/6/6.3/ui/docker-entrypoint.sh b/archive/8/8.0.1/ui/docker-entrypoint.sh
similarity index 100%
rename from 6/6.3/ui/docker-entrypoint.sh
rename to archive/8/8.0.1/ui/docker-entrypoint.sh
diff --git a/6/6.2/ui/logback.xml b/archive/8/8.0.1/ui/logback.xml
similarity index 100%
rename from 6/6.2/ui/logback.xml
rename to archive/8/8.0.1/ui/logback.xml
diff --git a/8/8.0/base-es7/Dockerfile b/archive/8/8.0/base-es7/Dockerfile
similarity index 100%
rename from 8/8.0/base-es7/Dockerfile
rename to archive/8/8.0/base-es7/Dockerfile
diff --git a/8/8.0/base/Dockerfile b/archive/8/8.0/base/Dockerfile
similarity index 100%
rename from 8/8.0/base/Dockerfile
rename to archive/8/8.0/base/Dockerfile
diff --git a/8/8.0/compose-es7/docker-compose.yml b/archive/8/8.0/compose-es7/docker-compose.yml
similarity index 100%
rename from 8/8.0/compose-es7/docker-compose.yml
rename to archive/8/8.0/compose-es7/docker-compose.yml
diff --git a/8/8.0/compose/docker-compose.yml b/archive/8/8.0/compose/docker-compose.yml
similarity index 100%
rename from 8/8.0/compose/docker-compose.yml
rename to archive/8/8.0/compose/docker-compose.yml
diff --git a/8/8.0/oap-es7/Dockerfile b/archive/8/8.0/oap-es7/Dockerfile
similarity index 100%
rename from 8/8.0/oap-es7/Dockerfile
rename to archive/8/8.0/oap-es7/Dockerfile
diff --git a/8/8.0/oap-es7/README.md b/archive/8/8.0/oap-es7/README.md
similarity index 100%
rename from 8/8.0/oap-es7/README.md
rename to archive/8/8.0/oap-es7/README.md
diff --git a/8/8.0/oap-es7/docker-entrypoint.sh b/archive/8/8.0/oap-es7/docker-entrypoint.sh
similarity index 100%
rename from 8/8.0/oap-es7/docker-entrypoint.sh
rename to archive/8/8.0/oap-es7/docker-entrypoint.sh
diff --git a/8/8.0/oap-es7/log4j2.xml b/archive/8/8.0/oap-es7/log4j2.xml
similarity index 100%
rename from 8/8.0/oap-es7/log4j2.xml
rename to archive/8/8.0/oap-es7/log4j2.xml
diff --git a/8/8.0/oap/Dockerfile b/archive/8/8.0/oap/Dockerfile
similarity index 100%
rename from 8/8.0/oap/Dockerfile
rename to archive/8/8.0/oap/Dockerfile
diff --git a/8/8.0/oap/README.md b/archive/8/8.0/oap/README.md
similarity index 100%
rename from 8/8.0/oap/README.md
rename to archive/8/8.0/oap/README.md
diff --git a/8/8.0/oap/docker-entrypoint.sh b/archive/8/8.0/oap/docker-entrypoint.sh
similarity index 100%
rename from 8/8.0/oap/docker-entrypoint.sh
rename to archive/8/8.0/oap/docker-entrypoint.sh
diff --git a/8/8.0.1/oap/log4j2.xml b/archive/8/8.0/oap/log4j2.xml
similarity index 100%
rename from 8/8.0.1/oap/log4j2.xml
rename to archive/8/8.0/oap/log4j2.xml
diff --git a/8/8.0/ui/Dockerfile b/archive/8/8.0/ui/Dockerfile
similarity index 100%
rename from 8/8.0/ui/Dockerfile
rename to archive/8/8.0/ui/Dockerfile
diff --git a/8/8.0/ui/README.md b/archive/8/8.0/ui/README.md
similarity index 100%
rename from 8/8.0/ui/README.md
rename to archive/8/8.0/ui/README.md
diff --git a/6/6.2/ui/docker-entrypoint.sh b/archive/8/8.0/ui/docker-entrypoint.sh
similarity index 100%
rename from 6/6.2/ui/docker-entrypoint.sh
rename to archive/8/8.0/ui/docker-entrypoint.sh
diff --git a/6/6.1/ui/logback.xml b/archive/8/8.0/ui/logback.xml
similarity index 100%
rename from 6/6.1/ui/logback.xml
rename to archive/8/8.0/ui/logback.xml
diff --git a/8/8.1.0/base-es7/Dockerfile b/archive/8/8.1.0/base-es7/Dockerfile
similarity index 100%
rename from 8/8.1.0/base-es7/Dockerfile
rename to archive/8/8.1.0/base-es7/Dockerfile
diff --git a/8/8.1.0/base/Dockerfile b/archive/8/8.1.0/base/Dockerfile
similarity index 100%
rename from 8/8.1.0/base/Dockerfile
rename to archive/8/8.1.0/base/Dockerfile
diff --git a/8/8.1.0/compose-es7/docker-compose.yml b/archive/8/8.1.0/compose-es7/docker-compose.yml
similarity index 100%
rename from 8/8.1.0/compose-es7/docker-compose.yml
rename to archive/8/8.1.0/compose-es7/docker-compose.yml
diff --git a/8/8.1.0/compose/docker-compose.yml b/archive/8/8.1.0/compose/docker-compose.yml
similarity index 100%
rename from 8/8.1.0/compose/docker-compose.yml
rename to archive/8/8.1.0/compose/docker-compose.yml
diff --git a/8/8.1.0/oap-es7/Dockerfile b/archive/8/8.1.0/oap-es7/Dockerfile
similarity index 100%
rename from 8/8.1.0/oap-es7/Dockerfile
rename to archive/8/8.1.0/oap-es7/Dockerfile
diff --git a/8/8.1.0/oap-es7/README.md b/archive/8/8.1.0/oap-es7/README.md
similarity index 100%
rename from 8/8.1.0/oap-es7/README.md
rename to archive/8/8.1.0/oap-es7/README.md
diff --git a/8/8.0.1/oap-es7/docker-entrypoint.sh b/archive/8/8.1.0/oap-es7/docker-entrypoint.sh
similarity index 100%
rename from 8/8.0.1/oap-es7/docker-entrypoint.sh
rename to archive/8/8.1.0/oap-es7/docker-entrypoint.sh
diff --git a/8/8.0.1/oap-es7/log4j2.xml b/archive/8/8.1.0/oap-es7/log4j2.xml
similarity index 100%
rename from 8/8.0.1/oap-es7/log4j2.xml
rename to archive/8/8.1.0/oap-es7/log4j2.xml
diff --git a/8/8.1.0/oap/Dockerfile b/archive/8/8.1.0/oap/Dockerfile
similarity index 100%
rename from 8/8.1.0/oap/Dockerfile
rename to archive/8/8.1.0/oap/Dockerfile
diff --git a/8/8.1.0/oap/README.md b/archive/8/8.1.0/oap/README.md
similarity index 100%
rename from 8/8.1.0/oap/README.md
rename to archive/8/8.1.0/oap/README.md
diff --git a/8/8.0.1/oap/docker-entrypoint.sh b/archive/8/8.1.0/oap/docker-entrypoint.sh
similarity index 100%
rename from 8/8.0.1/oap/docker-entrypoint.sh
rename to archive/8/8.1.0/oap/docker-entrypoint.sh
diff --git a/7/7.0/oap/log4j2.xml b/archive/8/8.1.0/oap/log4j2.xml
similarity index 100%
rename from 7/7.0/oap/log4j2.xml
rename to archive/8/8.1.0/oap/log4j2.xml
diff --git a/8/8.1.0/ui/Dockerfile b/archive/8/8.1.0/ui/Dockerfile
similarity index 100%
rename from 8/8.1.0/ui/Dockerfile
rename to archive/8/8.1.0/ui/Dockerfile
diff --git a/8/8.1.0/ui/README.md b/archive/8/8.1.0/ui/README.md
similarity index 100%
rename from 8/8.1.0/ui/README.md
rename to archive/8/8.1.0/ui/README.md
diff --git a/6/6.1/ui/docker-entrypoint.sh b/archive/8/8.1.0/ui/docker-entrypoint.sh
similarity index 100%
rename from 6/6.1/ui/docker-entrypoint.sh
rename to archive/8/8.1.0/ui/docker-entrypoint.sh
diff --git a/6/6.0-beta/ui/logback.xml b/archive/8/8.1.0/ui/logback.xml
similarity index 100%
rename from 6/6.0-beta/ui/logback.xml
rename to archive/8/8.1.0/ui/logback.xml
diff --git a/8/8.2.0/base-es7/Dockerfile b/archive/8/8.2.0/base-es7/Dockerfile
similarity index 100%
rename from 8/8.2.0/base-es7/Dockerfile
rename to archive/8/8.2.0/base-es7/Dockerfile
diff --git a/8/8.2.0/base/Dockerfile b/archive/8/8.2.0/base/Dockerfile
similarity index 100%
rename from 8/8.2.0/base/Dockerfile
rename to archive/8/8.2.0/base/Dockerfile
diff --git a/8/8.2.0/compose-es7/docker-compose.yml b/archive/8/8.2.0/compose-es7/docker-compose.yml
similarity index 100%
rename from 8/8.2.0/compose-es7/docker-compose.yml
rename to archive/8/8.2.0/compose-es7/docker-compose.yml
diff --git a/8/8.2.0/compose/docker-compose.yml b/archive/8/8.2.0/compose/docker-compose.yml
similarity index 100%
rename from 8/8.2.0/compose/docker-compose.yml
rename to archive/8/8.2.0/compose/docker-compose.yml
diff --git a/8/8.2.0/oap-es7/Dockerfile b/archive/8/8.2.0/oap-es7/Dockerfile
similarity index 100%
rename from 8/8.2.0/oap-es7/Dockerfile
rename to archive/8/8.2.0/oap-es7/Dockerfile
diff --git a/8/8.2.0/oap-es7/README.md b/archive/8/8.2.0/oap-es7/README.md
similarity index 100%
rename from 8/8.2.0/oap-es7/README.md
rename to archive/8/8.2.0/oap-es7/README.md
diff --git a/8/8.3.0/oap-es7/docker-entrypoint.sh b/archive/8/8.2.0/oap-es7/docker-entrypoint.sh
similarity index 100%
copy from 8/8.3.0/oap-es7/docker-entrypoint.sh
copy to archive/8/8.2.0/oap-es7/docker-entrypoint.sh
diff --git a/7/7.0/oap-es7/log4j2.xml b/archive/8/8.2.0/oap-es7/log4j2.xml
similarity index 100%
rename from 7/7.0/oap-es7/log4j2.xml
rename to archive/8/8.2.0/oap-es7/log4j2.xml
diff --git a/8/8.2.0/oap/Dockerfile b/archive/8/8.2.0/oap/Dockerfile
similarity index 100%
rename from 8/8.2.0/oap/Dockerfile
rename to archive/8/8.2.0/oap/Dockerfile
diff --git a/8/8.2.0/oap/README.md b/archive/8/8.2.0/oap/README.md
similarity index 100%
rename from 8/8.2.0/oap/README.md
rename to archive/8/8.2.0/oap/README.md
diff --git a/8/8.3.0/oap/docker-entrypoint.sh b/archive/8/8.2.0/oap/docker-entrypoint.sh
similarity index 100%
rename from 8/8.3.0/oap/docker-entrypoint.sh
rename to archive/8/8.2.0/oap/docker-entrypoint.sh
diff --git a/6/6.6/oap/log4j2.xml b/archive/8/8.2.0/oap/log4j2.xml
similarity index 100%
rename from 6/6.6/oap/log4j2.xml
rename to archive/8/8.2.0/oap/log4j2.xml
diff --git a/8/8.2.0/ui/Dockerfile b/archive/8/8.2.0/ui/Dockerfile
similarity index 100%
copy from 8/8.2.0/ui/Dockerfile
copy to archive/8/8.2.0/ui/Dockerfile
diff --git a/8/8.2.0/ui/README.md b/archive/8/8.2.0/ui/README.md
similarity index 100%
rename from 8/8.2.0/ui/README.md
rename to archive/8/8.2.0/ui/README.md
diff --git a/8/8.3.0/ui/docker-entrypoint.sh b/archive/8/8.2.0/ui/docker-entrypoint.sh
similarity index 100%
copy from 8/8.3.0/ui/docker-entrypoint.sh
copy to archive/8/8.2.0/ui/docker-entrypoint.sh
diff --git a/6/6.0-alpha/ui/logback.xml b/archive/8/8.2.0/ui/logback.xml
similarity index 100%
rename from 6/6.0-alpha/ui/logback.xml
rename to archive/8/8.2.0/ui/logback.xml
diff --git a/8/8.3.0/base-es7/Dockerfile b/archive/8/8.3.0/base-es7/Dockerfile
similarity index 100%
rename from 8/8.3.0/base-es7/Dockerfile
rename to archive/8/8.3.0/base-es7/Dockerfile
diff --git a/8/8.3.0/base/Dockerfile b/archive/8/8.3.0/base/Dockerfile
similarity index 100%
rename from 8/8.3.0/base/Dockerfile
rename to archive/8/8.3.0/base/Dockerfile
diff --git a/8/8.3.0/compose-es7/docker-compose.yml b/archive/8/8.3.0/compose-es7/docker-compose.yml
similarity index 100%
rename from 8/8.3.0/compose-es7/docker-compose.yml
rename to archive/8/8.3.0/compose-es7/docker-compose.yml
diff --git a/8/8.3.0/compose/docker-compose.yml b/archive/8/8.3.0/compose/docker-compose.yml
similarity index 100%
copy from 8/8.3.0/compose/docker-compose.yml
copy to archive/8/8.3.0/compose/docker-compose.yml
diff --git a/8/8.3.0/oap-es7/Dockerfile b/archive/8/8.3.0/oap-es7/Dockerfile
similarity index 100%
copy from 8/8.3.0/oap-es7/Dockerfile
copy to archive/8/8.3.0/oap-es7/Dockerfile
diff --git a/8/8.3.0/oap-es7/README.md b/archive/8/8.3.0/oap-es7/README.md
similarity index 100%
rename from 8/8.3.0/oap-es7/README.md
rename to archive/8/8.3.0/oap-es7/README.md
diff --git a/8/8.2.0/oap-es7/docker-entrypoint.sh b/archive/8/8.3.0/oap-es7/docker-entrypoint.sh
similarity index 100%
rename from 8/8.2.0/oap-es7/docker-entrypoint.sh
rename to archive/8/8.3.0/oap-es7/docker-entrypoint.sh
diff --git a/6/6.6/oap-es7/log4j2.xml b/archive/8/8.3.0/oap-es7/log4j2.xml
similarity index 100%
rename from 6/6.6/oap-es7/log4j2.xml
rename to archive/8/8.3.0/oap-es7/log4j2.xml
diff --git a/8/8.3.0/oap/Dockerfile b/archive/8/8.3.0/oap/Dockerfile
similarity index 100%
rename from 8/8.3.0/oap/Dockerfile
rename to archive/8/8.3.0/oap/Dockerfile
diff --git a/8/8.3.0/oap/README.md b/archive/8/8.3.0/oap/README.md
similarity index 100%
copy from 8/8.3.0/oap/README.md
copy to archive/8/8.3.0/oap/README.md
diff --git a/8/8.2.0/oap/docker-entrypoint.sh b/archive/8/8.3.0/oap/docker-entrypoint.sh
similarity index 100%
rename from 8/8.2.0/oap/docker-entrypoint.sh
rename to archive/8/8.3.0/oap/docker-entrypoint.sh
diff --git a/6/6.5/oap/log4j2.xml b/archive/8/8.3.0/oap/log4j2.xml
similarity index 100%
rename from 6/6.5/oap/log4j2.xml
rename to archive/8/8.3.0/oap/log4j2.xml
diff --git a/8/8.3.0/ui/Dockerfile b/archive/8/8.3.0/ui/Dockerfile
similarity index 100%
rename from 8/8.3.0/ui/Dockerfile
rename to archive/8/8.3.0/ui/Dockerfile
diff --git a/8/8.3.0/ui/README.md b/archive/8/8.3.0/ui/README.md
similarity index 100%
copy from 8/8.3.0/ui/README.md
copy to archive/8/8.3.0/ui/README.md
diff --git a/8/8.2.0/ui/docker-entrypoint.sh b/archive/8/8.3.0/ui/docker-entrypoint.sh
similarity index 100%
rename from 8/8.2.0/ui/docker-entrypoint.sh
rename to archive/8/8.3.0/ui/docker-entrypoint.sh
diff --git a/6/6.0-GA/ui/logback.xml b/archive/8/8.3.0/ui/logback.xml
similarity index 100%
rename from 6/6.0-GA/ui/logback.xml
rename to archive/8/8.3.0/ui/logback.xml
diff --git a/base/Dockerfile b/base/Dockerfile
new file mode 100644
index 0000000..55ea612
--- /dev/null
+++ b/base/Dockerfile
@@ -0,0 +1,177 @@
+# 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.
+ARG tag
+
+FROM adoptopenjdk/openjdk11:alpine AS base
+ARG version
+RUN echo "Building Apache SkyWalking ${version}"
+ENV SKYWALKING_VERSION=${version}
+
+FROM base AS es6
+RUN echo "This is the stage that build the es6 image"
+ENV SKYWALKING_TGZ=apache-skywalking-apm-${SKYWALKING_VERSION}.tar.gz
+
+FROM base AS es7
+RUN echo "This is the stage that build the es7 image"
+ENV SKYWALKING_TGZ=apache-skywalking-apm-es7-${SKYWALKING_VERSION}.tar.gz
+
+FROM ${tag} AS build
+
+ENV SKYWALKING_CLI_VERSION=0.5.0
+ENV SKYWALKING_ASC=${SKYWALKING_TGZ}.asc
+ENV SKYWALKING_SHA512=${SKYWALKING_TGZ}.sha512
+ENV SKYWALKING_CLI_TGZ=skywalking-cli-$SKYWALKING_CLI_VERSION-bin.tgz
+ENV SKYWALKING_CLI_ASC=${SKYWALKING_CLI_TGZ}.asc
+ENV SKYWALKING_CLI_SHA512=${SKYWALKING_CLI_TGZ}.sha512
+
+ENV SKYWALKING_HOME=/skywalking
+RUN mkdir -p "${SKYWALKING_HOME}"
+ENV TMPDIR=/tmp/sw
+RUN mkdir -p "${TMPDIR}"
+WORKDIR $TMPDIR
+
+ENV SKYWALKING_TGZ_URLS \
+        https://www.apache.org/dyn/closer.cgi?action=download&filename=skywalking/$SKYWALKING_VERSION/$SKYWALKING_TGZ \
+        # if the version is outdated, we might have to pull from the dist/archive :/
+	    https://www-us.apache.org/dist/skywalking/$SKYWALKING_VERSION/$SKYWALKING_TGZ \
+	    https://www.apache.org/dist/skywalking/$SKYWALKING_VERSION/$SKYWALKING_TGZ \
+	    https://archive.apache.org/dist/skywalking/$SKYWALKING_VERSION/$SKYWALKING_TGZ
+
+ENV SKYWALKING_ASC_URLS \
+        https://www.apache.org/dyn/closer.cgi?action=download&filename=skywalking/$SKYWALKING_VERSION/$SKYWALKING_ASC \
+        # if the version is outdated, we might have to pull from the dist/archive :/
+	    https://www-us.apache.org/dist/skywalking/$SKYWALKING_VERSION/$SKYWALKING_ASC \
+	    https://www.apache.org/dist/skywalking/$SKYWALKING_VERSION/$SKYWALKING_ASC \
+	    https://archive.apache.org/dist/skywalking/$SKYWALKING_VERSION/$SKYWALKING_ASC
+
+ENV SKYWALKING_SHA512_URLS \
+        https://www.apache.org/dyn/closer.cgi?action=download&filename=skywalking/$SKYWALKING_VERSION/$SKYWALKING_SHA512 \
+        # if the version is outdated, we might have to pull from the dist/archive :/
+	    https://www-us.apache.org/dist/skywalking/$SKYWALKING_VERSION/$SKYWALKING_SHA512 \
+	    https://www.apache.org/dist/skywalking/$SKYWALKING_VERSION/$SKYWALKING_SHA512 \
+	    https://archive.apache.org/dist/skywalking/$SKYWALKING_VERSION/$SKYWALKING_SHA512
+
+ENV SKYWALKING_CLI_TGZ_URLS \
+        https://www.apache.org/dyn/closer.cgi?action=download&filename=skywalking/cli/$SKYWALKING_CLI_VERSION/$SKYWALKING_CLI_TGZ \
+        # if the version is outdated, we might have to pull from the dist/archive :/
+	    https://www-us.apache.org/dist/skywalking/cli/$SKYWALKING_CLI_VERSION/$SKYWALKING_CLI_TGZ \
+	    https://www.apache.org/dist/skywalking/cli/$SKYWALKING_CLI_VERSION/$SKYWALKING_CLI_TGZ \
+	    https://archive.apache.org/dist/skywalking/cli/$SKYWALKING_CLI_VERSION/$SKYWALKING_CLI_TGZ
+
+ENV SKYWALKING_CLI_ASC_URLS \
+        https://www.apache.org/dyn/closer.cgi?action=download&filename=skywalking/$SKYWALKING_CLI_VERSION/$SKYWALKING_CLI_ASC \
+        # if the version is outdated, we might have to pull from the dist/archive :/
+	    https://www-us.apache.org/dist/skywalking/cli/$SKYWALKING_CLI_VERSION/$SKYWALKING_CLI_ASC \
+	    https://www.apache.org/dist/skywalking/cli/$SKYWALKING_CLI_VERSION/$SKYWALKING_CLI_ASC \
+	    https://archive.apache.org/dist/skywalking/cli/$SKYWALKING_CLI_VERSION/$SKYWALKING_CLI_ASC
+
+ENV SKYWALKING_CLI_SHA512_URLS \
+        https://www.apache.org/dyn/closer.cgi?action=download&filename=skywalking/$SKYWALKING_CLI_VERSION/$SKYWALKING_CLI_SHA512 \
+        # if the version is outdated, we might have to pull from the dist/archive :/
+	    https://www-us.apache.org/dist/skywalking/cli/$SKYWALKING_CLI_VERSION/$SKYWALKING_CLI_SHA512 \
+	    https://www.apache.org/dist/skywalking/cli/$SKYWALKING_CLI_VERSION/$SKYWALKING_CLI_SHA512 \
+	    https://archive.apache.org/dist/skywalking/cli/$SKYWALKING_CLI_VERSION/$SKYWALKING_CLI_SHA512
+
+RUN set -eux; \
+	\
+	apk add --no-cache --virtual .fetch-deps \
+		gnupg \
+		\
+		ca-certificates \
+		openssl \
+	; \
+	\
+	wget --timeout=20 -O KEYS https://downloads.apache.org/skywalking/KEYS; \
+	export GNUPGHOME="$(mktemp -d)"; \
+	gpg --import KEYS; \
+	\
+	success=; \
+	for url in $SKYWALKING_TGZ_URLS; do \
+		if wget --timeout=20  -O ${SKYWALKING_TGZ} "$url"; then \
+			success=1; \
+			break; \
+		fi; \
+	done; \
+	[ -n "$success" ]; \
+	\
+	success=; \
+	for url in $SKYWALKING_SHA512_URLS; do \
+		if wget --timeout=20  -O ${SKYWALKING_SHA512} "$url"; then \
+			success=1; \
+			break; \
+		fi; \
+	done; \
+	[ -n "$success" ]; \
+	\
+	cat ${SKYWALKING_SHA512} | sha512sum -c -; \
+	\
+	success=; \
+	for url in $SKYWALKING_ASC_URLS; do \
+		if wget --timeout=20  -O ${SKYWALKING_ASC} "$url"; then \
+			success=1; \
+			break; \
+		fi; \
+	done; \
+	[ -n "$success" ]; \
+	\
+	gpg --batch --verify ${SKYWALKING_ASC} ${SKYWALKING_TGZ}; \
+	tar -xvf ${SKYWALKING_TGZ} --strip-components=1 -C "${SKYWALKING_HOME}"; \
+	rm -rf "${SKYWALKING_HOME}/bin/"; \
+	success=; \
+	for url in $SKYWALKING_CLI_TGZ_URLS; do \
+		if wget --timeout=20  -O ${SKYWALKING_CLI_TGZ} "$url"; then \
+			success=1; \
+			break; \
+		fi; \
+	done; \
+	[ -n "$success" ]; \
+	\
+	success=; \
+	for url in $SKYWALKING_CLI_SHA512_URLS; do \
+		if wget --timeout=20  -O ${SKYWALKING_CLI_SHA512} "$url"; then \
+			success=1; \
+			break; \
+		fi; \
+	done; \
+	[ -n "$success" ]; \
+	\
+	cat ${SKYWALKING_CLI_SHA512} | sha512sum -c -; \
+	\
+	success=; \
+	for url in $SKYWALKING_CLI_ASC_URLS; do \
+		if wget --timeout=20  -O ${SKYWALKING_CLI_ASC} "$url"; then \
+			success=1; \
+			break; \
+		fi; \
+	done; \
+	[ -n "$success" ]; \
+	\
+	gpg --batch --verify ${SKYWALKING_CLI_ASC} ${SKYWALKING_CLI_TGZ}; \
+	tar -xvf ${SKYWALKING_CLI_TGZ}; \
+    mkdir "${SKYWALKING_HOME}/bin/"; \
+	mv skywalking-cli-${SKYWALKING_CLI_VERSION}-bin/bin/swctl-${SKYWALKING_CLI_VERSION}-linux-amd64 ${SKYWALKING_HOME}/bin/swctl; \
+	chmod 755 ${SKYWALKING_HOME}/bin/*; \
+	command -v gpgconf && gpgconf --kill all || :; \
+	ls -la ${SKYWALKING_HOME};
+
+FROM adoptopenjdk/openjdk11:alpine
+
+LABEL maintainer="hanahmily@apache.org,tanjian@apache.org"
+
+COPY --from=build /skywalking /skywalking
+
+RUN apk add --no-cache \
+    bash
diff --git a/6/6.0-alpha/ui/docker-entrypoint.sh b/compose/.env.es6
similarity index 88%
copy from 6/6.0-alpha/ui/docker-entrypoint.sh
copy to compose/.env.es6
index 2a857b7..8879a4d 100644
--- a/6/6.0-alpha/ui/docker-entrypoint.sh
+++ b/compose/.env.es6
@@ -14,8 +14,5 @@
 # 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
+ES_VERSION=6.8.8
+SW_STORAGE=elasticsearch
\ No newline at end of file
diff --git a/6/6.0-alpha/ui/docker-entrypoint.sh b/compose/.env.es7
similarity index 88%
rename from 6/6.0-alpha/ui/docker-entrypoint.sh
rename to compose/.env.es7
index 2a857b7..1e2ecaa 100644
--- a/6/6.0-alpha/ui/docker-entrypoint.sh
+++ b/compose/.env.es7
@@ -14,8 +14,5 @@
 # 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
+ES_VERSION=7.5.0
+SW_STORAGE=elasticsearch7
\ No newline at end of file
diff --git a/8/8.3.0/compose/docker-compose.yml b/compose/docker-compose.yml
similarity index 91%
rename from 8/8.3.0/compose/docker-compose.yml
rename to compose/docker-compose.yml
index dd6bf76..6aa084c 100644
--- a/8/8.3.0/compose/docker-compose.yml
+++ b/compose/docker-compose.yml
@@ -17,7 +17,7 @@
 version: '3.8'
 services:
   elasticsearch:
-    image: docker.elastic.co/elasticsearch/elasticsearch:6.8.6
+    image: docker.elastic.co/elasticsearch/elasticsearch:${ES_VERSION}
     container_name: elasticsearch
     restart: always
     ports:
@@ -31,9 +31,7 @@ services:
     environment:
       - discovery.type=single-node
       - bootstrap.memory_lock=true
-      - "ES_JAVA_OPTS=-Xms4096m -Xmx4096m"
-      - thread_pool.write.queue_size=1000
-      - thread_pool.index.queue_size=1000
+      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
     ulimits:
       memlock:
         soft: -1
diff --git a/8/8.3.0/oap-es7/Dockerfile b/oap-server/Dockerfile
similarity index 92%
rename from 8/8.3.0/oap-es7/Dockerfile
rename to oap-server/Dockerfile
index ae45fa3..f4c6bd6 100644
--- a/8/8.3.0/oap-es7/Dockerfile
+++ b/oap-server/Dockerfile
@@ -14,7 +14,10 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-FROM apache/skywalking-base:8.3.0-es7 AS build
+ARG tag
+ARG version
+
+FROM apache/skywalking-base:${version}-${tag} AS build
 
 WORKDIR skywalking
 
@@ -29,6 +32,9 @@ RUN mkdir ext-config; \
 
 FROM adoptopenjdk/openjdk11:alpine
 
+ARG tag
+ENV ES_VERSION=${tag}
+
 ENV JAVA_OPTS=" -Xms256M "
 
 LABEL maintainer="hanahmily@apache.org,tanjian@apache.org"
diff --git a/8/8.3.0/oap/README.md b/oap-server/README.md
similarity index 100%
rename from 8/8.3.0/oap/README.md
rename to oap-server/README.md
diff --git a/8/8.3.0/oap-es7/docker-entrypoint.sh b/oap-server/docker-entrypoint.sh
similarity index 92%
rename from 8/8.3.0/oap-es7/docker-entrypoint.sh
rename to oap-server/docker-entrypoint.sh
index 27617d0..17e21a8 100644
--- a/8/8.3.0/oap-es7/docker-entrypoint.sh
+++ b/oap-server/docker-entrypoint.sh
@@ -20,11 +20,6 @@ set -e
 
 echo "[Entrypoint] Apache SkyWalking Docker Image"
 
-if [[ "$SW_STORAGE" = "elasticsearch" ]]; then
-    echo "Current image doesn't Elasticsearch 6"
-    exit 1
-fi
-
 EXT_LIB_DIR=/skywalking/ext-libs
 EXT_CONFIG_DIR=/skywalking/ext-config
 
diff --git a/8/8.3.0/oap/log4j2.xml b/oap-server/log4j2.xml
similarity index 100%
rename from 8/8.3.0/oap/log4j2.xml
rename to oap-server/log4j2.xml
diff --git a/8/8.2.0/ui/Dockerfile b/ui/Dockerfile
similarity index 95%
rename from 8/8.2.0/ui/Dockerfile
rename to ui/Dockerfile
index 09ba24c..85a2b78 100644
--- a/8/8.2.0/ui/Dockerfile
+++ b/ui/Dockerfile
@@ -14,7 +14,9 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-FROM apache/skywalking-base:8.2.0-es6 AS build
+ARG version
+
+FROM apache/skywalking-base:${version}-es6 AS build
 
 WORKDIR skywalking
 
diff --git a/8/8.3.0/ui/README.md b/ui/README.md
similarity index 100%
rename from 8/8.3.0/ui/README.md
rename to ui/README.md
diff --git a/8/8.3.0/ui/docker-entrypoint.sh b/ui/docker-entrypoint.sh
similarity index 100%
rename from 8/8.3.0/ui/docker-entrypoint.sh
rename to ui/docker-entrypoint.sh
diff --git a/8/8.3.0/ui/logback.xml b/ui/logback.xml
similarity index 100%
rename from 8/8.3.0/ui/logback.xml
rename to ui/logback.xml