推荐把外网地址替换为国内高速镜像

# 替换源地址
http://dl-cdn.alpinelinux.org/alpine === https://mirrors.aliyun.com/alpine
https://repo1.maven.org/maven2 ===== https://maven.aliyun.com/repository/public
# go install 代理 proxy.golang.org
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct
# yum镜像
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# docker镜像
https://hub.daocloud.io/
https://7iw3ne9w.mirror.aliyuncs.com/
http://hub-mirror.c.163.com/
# npm镜像
npm config set registry https://registry.npm.taobao.org
# yarn镜像
yarn config set registry https://registry.npm.taobao.org -g
yarn config set sass_binary_site http://cdn.npm.taobao.org/dist/node-sass -g
# 设置APK加速 --repository ${ALPINE_REPO_URL}/edge/community/
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories

Docker常用命令

# 停止所有的容器
docker stop $(docker ps -aq)
# 删除所有的容器
docker-compose rm --stop
# 删除所有的镜像
docker-compose down --rmi all
# 删除容器
docker rm -f 容器名称
# 删除镜像
docker rmi 镜像ID
# docker镜像打包
docker save 镜像ID -o 包名.tar
# 下载镜像
docker pull 镜像名称:tag版本
# d导入镜像
docker load -i 包名.tar
# 镜像tag重命名
docker tag thatName:thatTag thisName:thisTag
# 构建本地的镜像
docker build -t kafka-kafka:v1 -f Dockerfile ./
# 基本运行样式
docker run -d --name zookeeper -p 2181:2181 wurstmeister/zookeeper:tag
#查看容器日志(根据的容器名 --docker run —d 容器名)
docker logs <container name>
# 删除和停止容器
docker rm -f b7ee9987e6cb6881cad0e4bf09b9a7f9095003bbe5d67ff36fb2118b946478dd
# 创建docker通讯网络
docker network create datahub_network
# 指定运行脚本服务配置
docker-compose -f docker-compose.yml up -d

示例

外网的开源项目:DockerFile


# Defining environment
ARG APP_ENV=prod FROM golang:1-alpine3.18 AS binary ENV DOCKERIZE_VERSION v0.6.1
WORKDIR /go/src/github.com/jwilder RUN apk --no-cache --update add openssl git tar curl WORKDIR /go/src/github.com/jwilder/dockerize RUN go install github.com/jwilder/dockerize@$DOCKERIZE_VERSION FROM alpine:3 AS base # Upgrade Alpine and base packages
ENV JMX_VERSION=0.18.0
# PFP-260: Upgrade Sqlite to >=3.28.0-r0 to fix https://security.snyk.io/vuln/SNYK-ALPINE39-SQLITE-449762
RUN apk --no-cache --update-cache --available upgrade \
&& apk --no-cache add curl bash coreutils gcompat sqlite libc6-compat java-snappy \
&& apk --no-cache add openjdk11-jre-headless --repository=http://dl-cdn.alpinelinux.org/alpine/edge/community \
&& curl -sS https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-runner/9.4.46.v20220331/jetty-runner-9.4.46.v20220331.jar --output jetty-runner.jar \
&& curl -sS https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-jmx/9.4.46.v20220331/jetty-jmx-9.4.46.v20220331.jar --output jetty-jmx.jar \
&& curl -sS https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-util/9.4.46.v20220331/jetty-util-9.4.46.v20220331.jar --output jetty-util.jar \
&& wget --no-verbose https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases/download/v1.24.0/opentelemetry-javaagent.jar \
&& wget --no-verbose https://repo1.maven.org/maven2/io/prometheus/jmx/jmx_prometheus_javaagent/${JMX_VERSION}/jmx_prometheus_javaagent-${JMX_VERSION}.jar -O jmx_prometheus_javaagent.jar \
&& cp /usr/lib/jvm/java-11-openjdk/jre/lib/security/cacerts /tmp/kafka.client.truststore.jks
COPY --from=binary /go/bin/dockerize /usr/local/bin ENV LD_LIBRARY_PATH="/lib:/lib64" FROM base as prod-install
COPY datahub-upgrade.jar /datahub/datahub-upgrade/bin/
COPY metadata-models/src/main/resources/entity-registry.yml /datahub/datahub-gms/resources/entity-registry.yml FROM base as dev-install
# Dummy stage for development. Assumes code is built on your machine and mounted to this image.
# See this excellent thread https://github.com/docker/cli/issues/1134 FROM ${APP_ENV}-install as final RUN addgroup -S datahub && adduser -S datahub -G datahub
USER datahub ENTRYPOINT ["java", "-jar", "/datahub/datahub-upgrade/bin/datahub-upgrade.jar"]

修改镜像地址

# Defining environment
ARG APP_ENV=prod # Defining custom repo urls for use in enterprise environments. Re-used between stages below.
ARG ALPINE_REPO_URL=https://mirrors.aliyun.com/alpine
ARG GITHUB_REPO_URL=https://github.com
ARG MAVEN_CENTRAL_REPO_URL=https://maven.aliyun.com/repository/public FROM golang:1-alpine3.18 AS binary # Re-declaring arg from above to make it available in this stage (will inherit default value)
ARG ALPINE_REPO_URL ENV DOCKERIZE_VERSION v0.6.1
WORKDIR /go/src/github.com/jwilder # Optionally set corporate mirror for apk
RUN if [ "${ALPINE_REPO_URL}" != "https://mirrors.aliyun.com/alpine" ] ; then sed -i "s#https://mirrors.aliyun.com/alpine#${ALPINE_REPO_URL}#g" /etc/apk/repositories ; fi RUN apk --no-cache --update add openssl git tar curl WORKDIR /go/src/github.com/jwilder/dockerize
# 设置代理
RUN go env -w GO111MODULE=on
RUN go env -w GOPROXY=https://goproxy.cn,direct
RUN go install github.com/jwilder/dockerize@$DOCKERIZE_VERSION FROM alpine:3.18 AS base # Re-declaring args from above to make them available in this stage (will inherit default values)
ARG ALPINE_REPO_URL
ARG GITHUB_REPO_URL
ARG MAVEN_CENTRAL_REPO_URL # Optionally set corporate mirror for apk
RUN if [ "${ALPINE_REPO_URL}" != "https://mirrors.aliyun.com/alpine" ] ; then sed -i "s#https://mirrors.aliyun.com/alpine#${ALPINE_REPO_URL}#g" /etc/apk/repositories ; fi # 设置APK加速 --repository ${ALPINE_REPO_URL}/edge/community/
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories # Upgrade Alpine and base packages
ENV JMX_VERSION=0.18.0
# PFP-260: Upgrade Sqlite to >=3.28.0-r0 to fix https://security.snyk.io/vuln/SNYK-ALPINE39-SQLITE-449762
RUN apk --no-cache --update-cache --available upgrade \
&& apk --no-cache add curl bash coreutils gcompat sqlite libc6-compat java-snappy \
&& apk --no-cache add openjdk11-jre-headless \
&& curl -sS ${MAVEN_CENTRAL_REPO_URL}/org/eclipse/jetty/jetty-runner/9.4.46.v20220331/jetty-runner-9.4.46.v20220331.jar --output jetty-runner.jar \
&& curl -sS ${MAVEN_CENTRAL_REPO_URL}/org/eclipse/jetty/jetty-jmx/9.4.46.v20220331/jetty-jmx-9.4.46.v20220331.jar --output jetty-jmx.jar \
&& curl -sS ${MAVEN_CENTRAL_REPO_URL}/org/eclipse/jetty/jetty-util/9.4.46.v20220331/jetty-util-9.4.46.v20220331.jar --output jetty-util.jar \
&& wget --no-verbose http://maven.cqcztech.cn/repository/maven-public/io/opentelemetry/javaagent/opentelemetry-javaagent/1.24.0/opentelemetry-javaagent-1.24.0.jar -O opentelemetry-javaagent.jar \
&& wget --no-verbose ${MAVEN_CENTRAL_REPO_URL}/io/prometheus/jmx/jmx_prometheus_javaagent/${JMX_VERSION}/jmx_prometheus_javaagent-${JMX_VERSION}.jar -O jmx_prometheus_javaagent.jar \
&& cp /usr/lib/jvm/java-11-openjdk/jre/lib/security/cacerts /tmp/kafka.client.truststore.jks
COPY --from=binary /go/bin/dockerize /usr/local/bin ENV LD_LIBRARY_PATH="/lib:/lib64" FROM base as prod-install
COPY datahub-upgrade.jar /datahub/datahub-upgrade/bin/
COPY metadata-models/src/main/resources/entity-registry.yml /datahub/datahub-gms/resources/entity-registry.yml FROM base as dev-install
# Dummy stage for development. Assumes code is built on your machine and mounted to this image.
# See this excellent thread https://github.com/docker/cli/issues/1134 FROM ${APP_ENV}-install as final RUN addgroup -S datahub && adduser -S datahub -G datahub
USER datahub ENTRYPOINT ["java", "-jar", "/datahub/datahub-upgrade/bin/datahub-upgrade.jar"]

开源组件DockerFIle老是Build失败,如何解决的更多相关文章

  1. IDEA配置好maven后新建maven项目一直build失败的解决方法

    maven配置了aliyun中央仓库后,IDEA新建maven项目一直出现以下问题: 相信有遇到这个问题的小伙伴很蛋疼,明明maven配置没错,新建项目却一直build失败,为了这个问题我重装过几次I ...

  2. 在Web API中使用Swagger-UI开源组件(一个深坑的解决)

    介绍: Swagger-Ui是一个非常棒的Web API说明帮助页,具体详情可自行Google和百度. 官网:http://swagger.io/    GitHub地址:https://github ...

  3. VS2008安装“Visual Studio Web 创作组件”安装失败的解决方法

    VS2008安装“Visual Studio Web 创作组件”安装失败的解决方法 今天在单位电脑安装VS2008,当安装到“Visual Studio Web 创作组件”时出现错误. 准备手动安装 ...

  4. VS2010在WIN7下安装报错“下列组件安装失败”如何解决

    VS2010在WIN7下安装报错“下列组件安装失败”如何解决 http://www.111cn.net/net/42/75914.htm

  5. 【vue】解决npm run build失败问题

    问题说明: 首先,npm run build失败的原因大部分都是因为webpack的子库和webpack的版本号不对应的问题

  6. 来开源吧!发布开源组件到 MavenCentral 仓库超详细攻略

    请点赞关注,你的支持对我意义重大. Hi,我是小彭.本文已收录到 GitHub · AndroidFamily 中.这里有 Android 进阶成长知识体系,有志同道合的朋友,关注公众号 [彭旭锐] ...

  7. 小D课堂 - 新版本微服务springcloud+Docker教程_5-02 Netflix开源组件断路器

    笔记 2.Netflix开源组件断路器Hystrix介绍     简介:介绍Hystrix基础知识和使用场景          文档地址:         https://github.com/Net ...

  8. 对Jenkinsfile语法说不,开源项目Jenkins Json Build挺你

    对Jenkinsfile语法说不,开源项目Jenkins Json Build挺你 项目背景 我所在的组织项目数量众多,使用的语言和框架也很多,比如Java.ReactNative.C# .NET.A ...

  9. react native 的图表开源组件react-native-chart-android

    react-native-chart-android是一个图表开源组件,使用方法可以去这里 由于需要在数据上加上触摸事件,而github上没有说明看源码找了半天才找到下面的解决方法,特此记录一下: 在 ...

  10. Ionic打包过程下载Gradle失败的解决方法

      安卓应用现在很多都是基于gradle进行大包,ionic默认的打包命令 cordova  build --release  android 就是使用gradle进行打包,但同时ionic也支持in ...

随机推荐

  1. 11.15javaweb学习

  2. WIN10删除文件时提示“找不到该项目,该项目不在......中,请确认该项目的位置,然后重试”的解决办法

    问题描述: 最近有部分WIN10用户在删除文件时提示"找不到该项目,该项目不在......中,请确认该项目的位置,然后重试". 解决办法: 1.首先新建一个TXT文档(为了方便使用 ...

  3. [转]使用Unity进行3D开发的思路和主要技术优势

    此处直接附上别人撰写好的博文,分享给各位读者. 原文链接:Unity3D手游开发实践--<腾讯桌球:客户端总结>.

  4. MCU命令

    三D打印常用MCU命令 allocate_oids count=42 分配 42 个 OIDs,后续用于标识和管理不同的设备或组件 config_spi oid=0 pin=PD7 cs_active ...

  5. Java底层知识面试题

    JVM内存结构class文件格式JVM不会理解我们写的Java源文件, 我们必须把Java源文件编译成class文件, 才能被JVM识别, 对于JVM而言,class文件相当于一个接口class文件是 ...

  6. System类、Math类、BigInteger与BigDecimal的使用

     System类代表系统,系统级的很多属性和控制方法都放置在该类的内部.该类位于java.lang包. 由于该类的构造器是private的,所以无法创建该类的对象,也就是无法实例化该类.其内部的成 ...

  7. Codeforces Round 967 (Div. 2)

    题目链接:Codeforces Round 967 (Div. 2) - Codeforces 总结:B题没测试就交wa一发,C题一直没想到怎么回溯,哎. A. Make All Equal tag: ...

  8. Linux下普通用户免密切换root

    问题需求: Linux下普通用户doge免密切换root 问题解决: Linux下普通用户切换到root用户下,默认情况是需要输入密码很不方便,因此需要实现普通用户doge免密切换到root用户. 示 ...

  9. jenkins+gitee+tomcat

    1.Jenkins [系统配置]添加gitee服务 2.项目配置 General 配置之前配置的gitee服务连接 3.源码配置 4.构建配置 5.构建触发器配置 最重要的是: 6.在gitee中配置 ...

  10. RabbitMQ(六)——路由模式

    RabbitMQ系列 RabbitMQ(一)--简介 RabbitMQ(二)--模式类型 RabbitMQ(三)--简单模式 RabbitMQ(四)--工作队列模式 RabbitMQ(五)--发布订阅 ...