2019独角兽企业重金招聘Python工程师标准>>>

构建系统基础镜像

alpine glibc 的Dockerfile内容如下:

alpine:3.6
MAINTAINER tongqiang<tongqiangyin@gmail.com># Here we install GNU libc (aka glibc) and set C.UTF-8 locale as default.ENV ALPINE_GLIBC_BASE_URL https://github.com/sgerrand/alpine-pkg-glibc/releases/download
ENV ALPINE_GLIBC_PACKAGE_VERSION 2.25-r0
ENV ALPINE_GLIBC_BASE_PACKAGE_FILENAME glibc-$ALPINE_GLIBC_PACKAGE_VERSION.apk
ENV ALPINE_GLIBC_BIN_PACKAGE_FILENAME glibc-bin-$ALPINE_GLIBC_PACKAGE_VERSION.apk
ENV ALPINE_GLIBC_I18N_PACKAGE_FILENAME glibc-i18n-$ALPINE_GLIBC_PACKAGE_VERSION.apkRUN apk add --no-cache --virtual=.build-dependencies wget ca-certificates \&& wget \"https://raw.githubusercontent.com/andyshinn/alpine-pkg-glibc/master/sgerrand.rsa.pub" \-O "/etc/apk/keys/sgerrand.rsa.pub" \&& wget \"$ALPINE_GLIBC_BASE_URL/$ALPINE_GLIBC_PACKAGE_VERSION/$ALPINE_GLIBC_BASE_PACKAGE_FILENAME" \"$ALPINE_GLIBC_BASE_URL/$ALPINE_GLIBC_PACKAGE_VERSION/$ALPINE_GLIBC_BIN_PACKAGE_FILENAME" \"$ALPINE_GLIBC_BASE_URL/$ALPINE_GLIBC_PACKAGE_VERSION/$ALPINE_GLIBC_I18N_PACKAGE_FILENAME" \&& apk add --no-cache \"$ALPINE_GLIBC_BASE_PACKAGE_FILENAME" \"$ALPINE_GLIBC_BIN_PACKAGE_FILENAME" \"$ALPINE_GLIBC_I18N_PACKAGE_FILENAME" \&& rm "/etc/apk/keys/sgerrand.rsa.pub" \&& /usr/glibc-compat/bin/localedef --force --inputfile POSIX --charmap UTF-8 C.UTF-8 || true \&& echo "export LANG=C.UTF-8" > /etc/profile.d/locale.sh \&& apk del glibc-i18n \&& rm "/root/.wget-hsts" \&& apk del .build-dependencies \&& rm \"$ALPINE_GLIBC_BASE_PACKAGE_FILENAME" \"$ALPINE_GLIBC_BIN_PACKAGE_FILENAME" \"$ALPINE_GLIBC_I18N_PACKAGE_FILENAME"ENV LANG=C.UTF-8

构建基础镜像

docker build -it myimage/alpine_glibc:3.6 .

在基础镜像上构建sun jdk 8镜像

alpine glibc  jdk 8的Dockerfile内容如下:

FROM myimage/alpine_glibc:3.6 MAINTAINER "tongqiang<tongqiangyin@gmail.com>"ENV JAVA_VERSION 8
ENV JAVA_UPDATE 151
ENV JAVA_BUILD 12
ENV JAVA_PATH e758a0de34e24606bca991d704f6dcbf
ENV JAVA_HOME /usr/local/jvm/default-jvm
ENV JAVA_DOWNLOAD_URL http://download.oracle.com/otn-pub/java/jdk/${JAVA_VERSION}u${JAVA_UPDATE}-b${JAVA_BUILD}/${JAVA_PATH}/jdk-${JAVA_VERSION}u${JAVA_UPDATE}-linux-x64.tar.gz
ENV JCE_DOWNLOAD_URL http://download.oracle.com/otn-pub/java/jce/${JAVA_VERSION}/jce_policy-${JAVA_VERSION}.zipRUN apk add --no-cache bash tar wget ca-certificates unzip \&& mkdir -p ${JAVA_HOME} \&& wget --header "Cookie: oraclelicense=accept-securebackup-cookie;" ${JAVA_DOWNLOAD_URL} \&& tar -xzf jdk-${JAVA_VERSION}u${JAVA_UPDATE}-linux-x64.tar.gz -C ${JAVA_HOME} --strip-components=1 \&& wget --header "Cookie: oraclelicense=accept-securebackup-cookie;" ${JCE_DOWNLOAD_URL} \&& unzip -jo -d ${JAVA_HOME}/jre/lib/security jce_policy-${JAVA_VERSION}.zip \&& ln -s ${JAVA_HOME}/bin/* /usr/bin/ \&& apk del tar wget ca-certificates unzip \&& rm -rf   jdk-${JAVA_VERSION}u${JAVA_UPDATE}-linux-x64.tar.gz \${JAVA_HOME}/*src.zip \${JAVA_HOME}/jre/lib/security/README.txt \jce_policy-${JAVA_VERSION}.zip \/tmp/*

构建sun jdk 8镜像

docker build -it myimage/alpine_glibc_jdk:8 .

转载于:https://my.oschina.net/ytqvip/blog/1595054

alpine_glibc 构建sun jdk 8的docker镜像相关推荐

  1. 构建属于自己的 jre Docker 镜像

    1. 概述 在实际项目中,有时官方提供的相关 docker 镜像不能满足企业对于镜像内部安全的要求:所以大型的企业都会构建属于企业内部的中间件的 docker 镜像. 2. 基于Alpine 制作 j ...

  2. docker-maven-plugin:自动构建Maven多模块的Docker镜像,并推送到Docker Registry或阿里云

    目录 docker-maven-plugin 基本介绍 使用手册 Maven Goals命令 Maven命令执行顺序 Skip Docker Goals Bound to Maven Phases(跳 ...

  3. Spring Boot 2.3.x 分层构建 Docker 镜像实战

    目录 一.什么是镜像分层 二.SpringBoot 2.3.x 新增对分层的支持 三.创建测试的 SpringBoot 应用 1.Maven 中引入相关依赖和插件 2.创建测试的 Controller ...

  4. SpringBoot 2.3.x 分层构建 Docker 镜像实践

    目录[-] . 一.什么是镜像分层 . 二.SpringBoot 2.3.x 新增对分层的支持 . 三.创建测试的 SpringBoot 应用 . 1.Maven 中引入相关依赖和插件 . 2.创建测 ...

  5. 【超全教程】SpringBoot 2.3.x 分层构建 Docker 镜像实践

    作者:超级小豆丁 http://www.mydlq.club/article/98/ 目录 什么是镜像分层 SpringBoot 2.3.x 新增对分层的支持 创建测试的 SpringBoot 应用 ...

  6. Spring Boot 分层构建 Docker 镜像实战

    目录 一.什么是镜像分层 二.SpringBoot 2.3.x 新增对分层的支持 三.创建测试的 SpringBoot 应用 1.Maven 中引入相关依赖和插件 2.创建测试的 Controller ...

  7. 基于领域知识的Docker镜像自动构建方法

    点击上方蓝字关注我们 基于领域知识的Docker镜像自动构建方法 陈伟1,2, 叶宏杰1,2, 周家宏1,2, 魏峻1,2 1 中国科学院大学,北京 100190 2 中国科学院软件研究所,北京 10 ...

  8. 构建安全可靠、最小化的 Docker 镜像

    容器化部署越来越多的用于企业的生产环境中,如何构建可靠.安全.最小化的 Docker 镜像也就越来越重要.本文将针对该问题,通过原理加实践的方式,从头到脚帮你撸一遍. 构建镜像 手动构建 手动构建 D ...

  9. 用GitHub Actions制作Docker镜像

    欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 关于GitHub Actions GitHub Act ...

最新文章

  1. cad怎么卸载干净_百度软件中心助手怎么样干净卸载
  2. 1. Action 实现 ModelDriven 接口后的运行流程
  3. NOI模拟题4 Problem C: 填格子(board)
  4. HDU - 5475 An easy problem(线段树)
  5. SAP Spartacus cost center list class的赋值逻辑
  6. 阮一峰react demo代码研究的学习笔记 - React.createElement
  7. java删除文件夹的所有文件
  8. html5 observer api,基于HTML5新特性Mutation Observer实现编辑器的撤销和回退操作
  9. leetcode力扣49. 字母异位词分组
  10. 容器技术Docker K8s 30 容器服务ACK基础与进阶-弹性伸缩
  11. 杭州吃喝玩乐便民大全
  12. 方差标准差,均方误差均方根误差,平均绝对误差
  13. 企业上云是什么意思?企业上云的好处是什么?
  14. 提升企业网站用户体验 你不可不知的秘诀
  15. 前2周还很火的ChatGPT,怎么突然就哑火了?
  16. scp远程复制文件自动输入密码
  17. python绘制三维地形_三维数字场地模型(上篇):Civil3D 地形的生成
  18. 2.4G功放芯片,支持国产
  19. 职场情商比职场生存法则更重要!!!
  20. 洛谷P1781 宇宙总统 题解

热门文章

  1. php 获取警告信息,获取PHP警告错误信息的解决方法_PHP教程
  2. android 存储方式以及路径简介
  3. RPC、RMI与MOM与组播 通信原理 .
  4. JavaScript中String的slice(),substr(),substring()三者区别
  5. 《Python Cookbook 3rd》笔记(1.20):合并多个字典或映射
  6. android 全局 窗口,miui12全局自由窗口app
  7. python每天定时9点执行_python定时器每天订时执行的实例方法
  8. 值得借鉴的30条好习惯
  9. springCloud - 第5篇 - 断路器 Hystrix ( Feign 、Ribbon )
  10. 解决 VUE前端项目报错: Uncaught ReferenceError : initPage is not defined (initPage 方法是有的,依旧报错找不到)