This is an automated email from the ASF dual-hosted git repository. dockerzhang pushed a commit to branch release-1.3.0 in repository https://gitbox.apache.org/repos/asf/inlong.git
commit deff4bd582cf53acbef60e168d643b238cb50625 Author: Lucas <100204617+lucaspeng12...@users.noreply.github.com> AuthorDate: Wed Sep 14 10:21:43 2022 +0800 [INLONG-5870][Docker] Add dependency to fix the arm images building (#5871) --- .github/workflows/ci_docker.yml | 7 +++++++ docker/build-docker-images.sh | 23 +++++++++++++---------- 2 files changed, 20 insertions(+), 10 deletions(-) diff --git a/.github/workflows/ci_docker.yml b/.github/workflows/ci_docker.yml index 6e99958bd..2e6ab4bbd 100644 --- a/.github/workflows/ci_docker.yml +++ b/.github/workflows/ci_docker.yml @@ -65,6 +65,13 @@ jobs: with: python-version: 3.7 + - name: Set up QEMU dependency + uses: docker/setup-qemu-action@v2 + + - name: Set up Docker Buildx + id: buildx + uses: docker/setup-buildx-action@v2 + - name: Cache Maven packages uses: actions/cache@v3 with: diff --git a/docker/build-docker-images.sh b/docker/build-docker-images.sh index 05790e87b..485e57f78 100644 --- a/docker/build-docker-images.sh +++ b/docker/build-docker-images.sh @@ -23,10 +23,12 @@ ENV_ARCH=$(uname -m) BUILD_ARCH="aarch64" POSTFIX="-aarch64" -PLATFORM_AARCH64="--platform linux/arm64/v8" +PLATFORM_AARCH64="--platform linux/arm64" PLATFORM_X86="--platform linux/amd64" USE_PLATFORM="" +TYPE="" + SHELL_FOLDER=$(cd "$(dirname "$0")";pwd) cd ${SHELL_FOLDER} @@ -51,6 +53,7 @@ for (( i=1; i<=$#; i++)); do if [ "${!i}" = "-x" ] || [ "${!i}" = "--buildx" ]; then NEED_BUILD=true USE_BUILDX="buildx" + TYPE="-o type=docker" j=$((i+1)) BUILD_ARCH=${!j} if [ "$BUILD_ARCH" != "$ARCH_AARCH64" ] && [ "$BUILD_ARCH" != "$ARCH_X86" ]; then @@ -128,16 +131,16 @@ if [ "$BUILD_ARCH" = "$ARCH_X86" ]; then cp ${tubemq_all_tarball} ${tubemq_all_dockerfile_path}/target/${tubemq_all_tarball_name} fi -docker ${USE_BUILDX} build ${USE_PLATFORM} -t inlong/manager:${tag} inlong-manager/manager-docker/ --build-arg VERSION=${version} -docker ${USE_BUILDX} build ${USE_PLATFORM} -t inlong/dataproxy:${tag} inlong-dataproxy/dataproxy-docker/ --build-arg DATAPROXY_TARBALL=${DATAPROXY_TARBALL} -docker ${USE_BUILDX} build ${USE_PLATFORM} -t inlong/audit:${tag} inlong-audit/audit-docker/ --build-arg AUDIT_TARBALL=${AUDIT_TARBALL} -docker ${USE_BUILDX} build ${USE_PLATFORM} -t inlong/tubemq-manager:${tag} inlong-tubemq/tubemq-docker/tubemq-manager/ --build-arg TUBEMQ_MANAGER_TARBALL=${TUBEMQ_MANAGER_TARBALL} -docker ${USE_BUILDX} build ${USE_PLATFORM} -t inlong/dashboard:${tag} inlong-dashboard/ --build-arg DASHBOARD_FILE=${DASHBOARD_FILE} -docker ${USE_BUILDX} build ${USE_PLATFORM} -t inlong/agent:${tag} inlong-agent/agent-docker/ --build-arg AGENT_TARBALL=${AGENT_TARBALL} +docker ${USE_BUILDX} build ${USE_PLATFORM} ${TYPE} -t inlong/manager:${tag} inlong-manager/manager-docker/ --build-arg VERSION=${version} +docker ${USE_BUILDX} build ${USE_PLATFORM} ${TYPE} -t inlong/dataproxy:${tag} inlong-dataproxy/dataproxy-docker/ --build-arg DATAPROXY_TARBALL=${DATAPROXY_TARBALL} +docker ${USE_BUILDX} build ${USE_PLATFORM} ${TYPE} -t inlong/audit:${tag} inlong-audit/audit-docker/ --build-arg AUDIT_TARBALL=${AUDIT_TARBALL} +docker ${USE_BUILDX} build ${USE_PLATFORM} ${TYPE} -t inlong/tubemq-manager:${tag} inlong-tubemq/tubemq-docker/tubemq-manager/ --build-arg TUBEMQ_MANAGER_TARBALL=${TUBEMQ_MANAGER_TARBALL} +docker ${USE_BUILDX} build ${USE_PLATFORM} ${TYPE} -t inlong/dashboard:${tag} inlong-dashboard/ --build-arg DASHBOARD_FILE=${DASHBOARD_FILE} +docker ${USE_BUILDX} build ${USE_PLATFORM} ${TYPE} -t inlong/agent:${tag} inlong-agent/agent-docker/ --build-arg AGENT_TARBALL=${AGENT_TARBALL} if [ "$BUILD_ARCH" = "$ARCH_X86" ]; then - docker ${USE_BUILDX} build ${USE_PLATFORM} -t inlong/tubemq-all:${tag} inlong-tubemq/tubemq-docker/tubemq-all/ --build-arg TUBEMQ_TARBALL=${TUBEMQ_TARBALL} - docker ${USE_BUILDX} build ${USE_PLATFORM} -t inlong/tubemq-cpp:${tag} inlong-tubemq/tubemq-docker/tubemq-cpp/ - docker ${USE_BUILDX} build ${USE_PLATFORM} -t inlong/tubemq-build:${tag} inlong-tubemq/tubemq-docker/tubemq-build/ + docker ${USE_BUILDX} build ${USE_PLATFORM} ${TYPE} -t inlong/tubemq-all:${tag} inlong-tubemq/tubemq-docker/tubemq-all/ --build-arg TUBEMQ_TARBALL=${TUBEMQ_TARBALL} + docker ${USE_BUILDX} build ${USE_PLATFORM} ${TYPE} -t inlong/tubemq-cpp:${tag} inlong-tubemq/tubemq-docker/tubemq-cpp/ + docker ${USE_BUILDX} build ${USE_PLATFORM} ${TYPE} -t inlong/tubemq-build:${tag} inlong-tubemq/tubemq-docker/tubemq-build/ fi docker tag inlong/manager:${tag} inlong/manager:latest${POSTFIX}