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

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


The following commit(s) were added to refs/heads/master by this push:
     new 7c033fe  feat: support CentOS image for dashboard (#259)
7c033fe is described below

commit 7c033fe84e50c42042a7165c33279852d0170da9
Author: Zeping Bai <[email protected]>
AuthorDate: Fri Dec 24 18:34:12 2021 +0800

    feat: support CentOS image for dashboard (#259)
---
 .github/workflows/dashboard-docker-test.yaml | 12 +++++--
 Makefile                                     | 48 ++++++++++++++++++----------
 dashboard/{Dockerfile => Dockerfile.alpine}  |  4 ---
 dashboard/{Dockerfile => Dockerfile.centos}  |  6 +---
 4 files changed, 41 insertions(+), 29 deletions(-)

diff --git a/.github/workflows/dashboard-docker-test.yaml 
b/.github/workflows/dashboard-docker-test.yaml
index d409d58..012af36 100644
--- a/.github/workflows/dashboard-docker-test.yaml
+++ b/.github/workflows/dashboard-docker-test.yaml
@@ -10,7 +10,13 @@ on:
 
 jobs:
   dashboard-docker-test:
-    name: build dashboard & test
+    strategy:
+      fail-fast: false
+      matrix:
+        os:
+          - centos
+          - alpine
+    name: build dashboard & test on ${{ matrix.os }}
     runs-on: ubuntu-latest
     env:
       APISIX_DASHBOARD_TAG: "2.10"
@@ -20,7 +26,7 @@ jobs:
 
       - name: Build and run
         run: |
-          make build-dashboard
+          make build-dashboard-${{ matrix.os }}
           docker-compose -f ./compose/dashboard-compose.yaml up -d
           sleep 30
           docker logs compose_dashboard_1
@@ -33,7 +39,7 @@ jobs:
 
       - name: Tar Image
         run: |
-          make save-dashboard-tar
+          make save-dashboard-${{ matrix.os }}-tar
 
       - name: Upload Image
         uses: actions/upload-artifact@v2
diff --git a/Makefile b/Makefile
index d7facc5..2677b7c 100644
--- a/Makefile
+++ b/Makefile
@@ -142,21 +142,19 @@ save-alpine-tar:
        @$(call func_echo_success_status, "$@ -> [ Done ]")
 
 
-### build-dashboard : Build apache/dashboard:tag image
-.PHONY: build-dashboard
-build-dashboard:
+### build-dashboard-centos : Build apache/dashboard:tag image on centos
+.PHONY: build-dashboard-centos
+build-dashboard-centos:
        @$(call func_echo_status, "$@ -> [ Start ]")
-       $(ENV_DOCKER) build -t 
$(APISIX_DASHBOARD_IMAGE_NAME):$(APISIX_DASHBOARD_VERSION) -f 
./dashboard/Dockerfile .
+       $(ENV_DOCKER) build -t 
$(APISIX_DASHBOARD_IMAGE_NAME):$(APISIX_DASHBOARD_VERSION) -f 
./dashboard/Dockerfile.centos .
        @$(call func_echo_success_status, "$@ -> [ Done ]")
 
 
-### push-dashboard : Push apache/dashboard:tag image
-.PHONY: push-dashboard
-push-dashboard:
+### build-dashboard-alpine : Build apache/dashboard:tag image on alpine
+.PHONY: build-dashboard-alpine
+build-dashboard-alpine:
        @$(call func_echo_status, "$@ -> [ Start ]")
-       $(ENV_DOCKER) push 
$(APISIX_DASHBOARD_IMAGE_NAME):$(APISIX_DASHBOARD_VERSION)
-       $(ENV_DOCKER) build -t $(APISIX_DASHBOARD_IMAGE_NAME):latest -f 
./dashboard/Dockerfile .
-       $(ENV_DOCKER) push $(APISIX_DASHBOARD_IMAGE_NAME):latest
+       $(ENV_DOCKER) build -t 
$(APISIX_DASHBOARD_IMAGE_NAME):$(APISIX_DASHBOARD_VERSION) -f 
./dashboard/Dockerfile.alpine .
        @$(call func_echo_success_status, "$@ -> [ Done ]")
 
 
@@ -165,22 +163,38 @@ push-dashboard:
 push-multiarch-dashbaord:
        @$(call func_echo_status, "$@ -> [ Start ]")
        $(ENV_DOCKER) buildx build --push \
-               -t $(APISIX_DASHBOARD_IMAGE_NAME):$(APISIX_DASHBOARD_VERSION) \
+               -t 
$(APISIX_DASHBOARD_IMAGE_NAME):$(APISIX_DASHBOARD_VERSION)-alpine \
+               --build-arg 
APISIX_DASHBOARD_VERSION=release/$(APISIX_DASHBOARD_VERSION) \
                --platform linux/amd64,linux/arm64 \
-               -f ./dashboard/Dockerfile .
+               -f ./dashboard/Dockerfile.alpine .
+       $(ENV_DOCKER) buildx build --push \
+               -t 
$(APISIX_DASHBOARD_IMAGE_NAME):$(APISIX_DASHBOARD_VERSION)-centos \
+               --build-arg 
APISIX_DASHBOARD_VERSION=release/$(APISIX_DASHBOARD_VERSION) \
+               --platform linux/amd64,linux/arm64 \
+               -f ./dashboard/Dockerfile.centos .
        $(ENV_DOCKER) buildx build --push \
                -t $(APISIX_DASHBOARD_IMAGE_NAME):latest \
+               --build-arg 
APISIX_DASHBOARD_VERSION=release/$(APISIX_DASHBOARD_VERSION) \
                --platform linux/amd64,linux/arm64 \
-               -f ./dashboard/Dockerfile .
+               -f ./dashboard/Dockerfile.centos .
+       @$(call func_echo_success_status, "$@ -> [ Done ]")
+
+
+### save-dashboard-centos-tar : tar apache/apisix-dashboard:tag image
+.PHONY: save-dashboard-centos-tar
+save-dashboard-centos-tar:
+       @$(call func_echo_status, "$@ -> [ Start ]")
+       mkdir -p package
+       $(ENV_DOCKER) save -o 
./package/$(APISIX_DASHBOARD_IMAGE_TAR_NAME)_$(APISIX_DASHBOARD_VERSION)-centos.tar
 $(APISIX_DASHBOARD_IMAGE_NAME):$(APISIX_DASHBOARD_VERSION)
        @$(call func_echo_success_status, "$@ -> [ Done ]")
 
 
-### save-dashboard-tar : tar apache/apisix-dashboard:tag image
-.PHONY: save-dashboard-tar
-save-dashboard-tar:
+### save-dashboard-alpine-tar : tar apache/apisix-dashboard:tag image
+.PHONY: save-dashboard-alpine-tar
+save-dashboard-alpine-tar:
        @$(call func_echo_status, "$@ -> [ Start ]")
        mkdir -p package
-       $(ENV_DOCKER) save -o 
./package/$(APISIX_DASHBOARD_IMAGE_TAR_NAME)_$(APISIX_DASHBOARD_VERSION).tar 
$(APISIX_DASHBOARD_IMAGE_NAME):$(APISIX_DASHBOARD_VERSION)
+       $(ENV_DOCKER) save -o 
./package/$(APISIX_DASHBOARD_IMAGE_TAR_NAME)_$(APISIX_DASHBOARD_VERSION)-alpine.tar
 $(APISIX_DASHBOARD_IMAGE_NAME):$(APISIX_DASHBOARD_VERSION)
        @$(call func_echo_success_status, "$@ -> [ Done ]")
 
 
diff --git a/dashboard/Dockerfile b/dashboard/Dockerfile.alpine
similarity index 93%
copy from dashboard/Dockerfile
copy to dashboard/Dockerfile.alpine
index cb1000f..2267707 100644
--- a/dashboard/Dockerfile
+++ b/dashboard/Dockerfile.alpine
@@ -57,10 +57,6 @@ RUN if [ "$ENABLE_PROXY" = "true" ] ; then yarn config set 
registry https://regi
 
 FROM alpine:latest as prod
 
-ARG ENABLE_PROXY=false
-
-RUN if [ "$ENABLE_PROXY" = "true" ] ; then sed -i 
's/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g' /etc/apk/repositories ; fi
-
 WORKDIR /usr/local/apisix-dashboard
 
 COPY --from=api-builder /usr/local/apisix-dashboard/output/ ./
diff --git a/dashboard/Dockerfile b/dashboard/Dockerfile.centos
similarity index 92%
rename from dashboard/Dockerfile
rename to dashboard/Dockerfile.centos
index cb1000f..d8c19ff 100644
--- a/dashboard/Dockerfile
+++ b/dashboard/Dockerfile.centos
@@ -55,11 +55,7 @@ RUN if [ "$ENABLE_PROXY" = "true" ] ; then yarn config set 
registry https://regi
     && yarn install \
     && yarn build
 
-FROM alpine:latest as prod
-
-ARG ENABLE_PROXY=false
-
-RUN if [ "$ENABLE_PROXY" = "true" ] ; then sed -i 
's/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g' /etc/apk/repositories ; fi
+FROM centos:8 as prod
 
 WORKDIR /usr/local/apisix-dashboard
 

Reply via email to