珠海市企业网站制作品牌wordpress留言板模板下载

当前位置: 首页 > news >正文

珠海市企业网站制作品牌,wordpress留言板模板下载,九一人才网找工作赣州官网,上海市建设工程咨询有限公司接上篇#xff1a;linux上构建任意版本的rocketmq多架构x86 arm镜像——筑梦之路-CSDN博客 这里来记录下构建rocketmq-dashboard多架构镜像的方法步骤。 当前rocketmq-dashboard只有一个版本#xff0c;源码地址如下#xff1a; https://dist.apache.org/repos/dist/rele…接上篇linux上构建任意版本的rocketmq多架构x86 arm镜像——筑梦之路-CSDN博客 这里来记录下构建rocketmq-dashboard多架构镜像的方法步骤。 当前rocketmq-dashboard只有一个版本源码地址如下 https://dist.apache.org/repos/dist/release/rocketmq/rocketmq-dashboard/1.0.0/rocketmq-dashboard-1.0.0-source-release.zip

  1. 编写Dockerfile文件 #

    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 centos:7RUN yum install -y java-1.8.0-openjdk-devel.x86_64 unzip openssl, which gnupg, wget \ yum clean all -y# FROM openjdk:8-jdk

    RUN apt-get update apt-get install -y –no-install-recommends

    bash libapr1 unzip telnet wget gnupg ca-certificates

    rm -rf /var/lib/apt/lists/*ARG userrocketmq

    ARG grouprocketmq ARG uid3000 ARG gid3000# RocketMQ Dashboard runs with user rocketmq, uid 3000

    If you bind mount a volume from the host or a data container,

    ensure you use the same uid

    RUN groupadd -g \({gid} \){group} \ useradd -u \({uid} -g \){gid} -m -s /bin/bash \({user}ARG version# install maven 3.6.3 ARG MAVEN_VERSION3.6.3 ARG MAVEN_DOWNLOAD_URLhttps://dlcdn.apache.org/maven/maven-3/\){MAVEN_VERSION}/binaries/apache-maven-\({MAVEN_VERSION}-bin.tar.gzRUN mkdir -p /usr/share/maven /usr/share/maven/ref \wget -O /tmp/apache-maven.tar.gz \){MAVEN_DOWNLOAD_URL} –no-check-certificate \tar -xzf /tmp/apache-maven.tar.gz -C /usr/share/maven –strip-components1 \rm -f /tmp/apache-maven.tar.gz \ln -s /usr/share/maven/bin/mvn /usr/bin/mvn### make it faster if remove those #s bellow

    RUN sed -i 159i

    mirror

    idnexus-tencentyun/id

    mirrorOf*/mirrorOf

    nameNexus tencentyun/name

    urlhttp://mirrors.cloud.tencent.com/nexus/repository/maven-public//url

    /mirror

    /usr/share/maven/conf/settings.xmlRUN cat /usr/share/maven/conf/settings.xmlENV ROCKETMQ_DASHBOARD_VERSION ${version}

    ENV ROCKETMQ_DASHBOARD_HOME /home/rocketmq/rocketmq-dashboard-\({ROCKETMQ_DASHBOARD_VERSION} WORKDIR \){ROCKETMQ_DASHBOARD_HOME}RUN set -eux; \curl -L https://dist.apache.org/repos/dist/release/rocketmq/rocketmq-dashboard/${ROCKETMQ_DASHBOARD_VERSION}/rocketmq-dashboard-${ROCKETMQ_DASHBOARD_VERSION}-source-release.zip -o rocketmq-dashboard.zip; \curl -L https://dist.apache.org/repos/dist/release/rocketmq/rocketmq-dashboard/${ROCKETMQ_DASHBOARD_VERSION}/rocketmq-dashboard-${ROCKETMQ_DASHBOARD_VERSION}-source-release.zip.asc -o rocketmq-dashboard.zip.asc; \wget https://www.apache.org/dist/rocketmq/KEYS –no-check-certificate; \gpg –import KEYS; \gpg –batch –verify rocketmq-dashboard.zip.asc rocketmq-dashboard.zip ; \unzip rocketmq-dashboard.zip ; \rm rocketmq-dashboard.zip rocketmq-dashboard.zip.asc KEYS;RUN cd rocketmq-dashboard-\({ROCKETMQ_DASHBOARD_VERSION} ; \mvn -DskipTests clean install ;\ls -l target ; RUN mkdir bin; \mv rocketmq-dashboard-\){ROCKETMQ_DASHBOARD_VERSION}/target/rocketmq-dashboard-\({ROCKETMQ_DASHBOARD_VERSION}.jar bin/ ; \mv bin/rocketmq-dashboard-\){ROCKETMQ_DASHBOARD_VERSION}.jar bin/rocketmq-dashboard.jar; \ls -l bin; \rm -rf rocketmq-dashboard-\({ROCKETMQ_DASHBOARD_VERSION}RUN rm -rf /root/.m2/repository/* RUN rm -rf /usr/share/maven RUN yum remove wget unzip openssl -yRUN chown -R \){uid}:\({gid} \){ROCKETMQ_DASHBOARD_HOME} EXPOSE 8080 ENTRYPOINT [java, -jar, bin/rocketmq-dashboard.jar]; 这个Dockerfile太繁杂优化的话考虑使用多阶段构建方式。

  2. 编写构建脚本 #!/usr/bin/env bash# 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.checkVersion() {echo Version \(1echo \)1 |grep -E ^[0-9].[0-9].[0-9] /dev/nullif [ \(? 0 ]; thenreturn 1fiecho Version \)1 illegal, it should be X.X.X format(e.g. 4.5.0), please check released versions in https://archive.apache.org/dist/rocketmq/exit -1

    }if [ \(# -lt 2 ]; thenecho -e Usage: sh \)0 Version BaseImageexit -1 fiROCKETMQ_DASHBOARD_VERSION\(1 BASE_IMAGE\)2checkVersion \(ROCKETMQ_DASHBOARD_VERSION# Build rocketmq case \){BASE_IMAGE} incentos)docker run –privileged –rm harbor.codemiracle.com.cn/baseapp/binfmt:latest –install alldocker buildx create –use –namemybuilder-rocketmq-dashboard –driver docker-container –driver-opt imageharbor.codemiracle.com.cn/baseapp/buildkit:masterdocker buildx build –no-cache -f Dockerfile-centos-dashboard –platformlinux/amd64,linux/arm64 -t harbor.codemiracle.com.cn/baseapp/rocketmq-dashboard:\({ROCKETMQ_DASHBOARD_VERSION} --build-arg version\){ROCKETMQ_DASHBOARD_VERSION} . –pushdocker buildx rm mybuilder-rocketmq-dashboard#docker build –no-cache -f Dockerfile-centos-dashboard -t apache/rocketmq-dashboard:\({ROCKETMQ_DASHBOARD_VERSION}-centos --build-arg version\){ROCKETMQ_DASHBOARD_VERSION} .;;*)echo ${BASE_IMAGE} is not supported, supported base images: centosexit -1;; esac

  3. 如何使用

    如何构建多架构镜像sh build-image-dashboard.sh [版本号] centoseg:sh build-image-dashboard.sh 1.0.0 centos

    rocketmq-dashboard是一个可视化管理rocketmq的web界面工具。市面上几乎没有双架构镜像基本上只有amd64的通过我这个脚本可以构建支持x86 \  arm 架构的双架构镜像。