1目标镜像环境

centos7
jdk1.8
maven3
git

2 构建流程

2.1 准备jdk1.8和maven3.6.3

#1)下载
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
http://mirror-hk.koddos.net/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
#2)解压到指定目录
mkdir /opt/image && cd /opt/image
tar xvfz jdk-8u221-linux-x64.tar.gz -C /opt/image
tar xvfz apache-maven-3.6.3-bin.tar.gz -C /opt/image

2.2 准备Dockerfile

cd /opt/image
vim Dockerfile
内容如下:

FROM centos
MAINTAINER guici# 执行命令:创建目录
RUN mkdir -p /opt/tools/jdk/
RUN mkdir -p /opt/tools/maven/# 安装git(待优化)
RUN yum -y install git# 将jdk1.8.0_221添加到镜像centos的/opt/tools/jdk/jdk_1.8/目录下
COPY jdk1.8.0_221/ /opt/tools/jdk/jdk_1.8/# 将apache-maven-3.6.3添加到镜像centos的/opt/tools/maven/maven_3.6.3/目录下
COPY apache-maven-3.6.3/ /opt/tools/maven/maven_3.6.3/# 添加环境变量
ENV JAVA_HOME /opt/tools/jdk/jdk_1.8
ENV MAVEN_HOME /opt/tools/maven/maven_3.6.3
ENV PATH $PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

2.3 构建镜像

docker build -t base:v1.0-git-mvn363-jdk180221 .

#检查一下
docker run -it base:v1.0-git-mvn363-jdk180221 /bin/bash

Docker篇-Centos7 docker构建基础镜像(centos+jdk1.8+maven3+git)相关推荐

  1. docker之操作管理应用模板、镜像、容器、构建基础镜像、状态删除

    五.Docker操作管理 1.应用模板 (1)Concrete5 通过"应用商店"部署Concrete5,修改网页访问端口为9091,通过curl命令访问首页,提交执行结果文本到命 ...

  2. 【Docker篇】Docker镜像加载原理,UnionFS(联合文件系统),镜像Commit

    文章目录 Docker镜像 1. 镜像是什么 2.Docker镜像加载原理 2.1 UnionFS(联合文件系统) 2.2 Docker镜像加载原理 3. 分层理解 3.1 引申理解 4. 镜像Com ...

  3. 流水线中使用 docker in pod 方式构建容器镜像

    上个月参加了 Rancher 社区举办的 <Dockershim 即将被移除,你准备好了么?[1]>直播分享后,得知自 1.24 版本之后,Kubernetes 社区将正式放弃对 dock ...

  4. Docker制作Python运行环境基础镜像

    一.准备工作 1.1 Python安装包的下载 (说明:python版本可根据自己需求更换) 官网下载:https://www.python.org/downloads/source/ 百度网盘: – ...

  5. 【云原生Docker篇】Docker的容器管理操作

    1.创建容器 容器创建:就是将镜像加载到容器的过程. 创建容器时如果没有指定容器名称,系统会自动创建一个名称. 新创建的容器默认处于停止状态,不运行任何程序,需要在其中发起一个进程来启动容器. doc ...

  6. Docker篇之docker容器之间的通信

    自从Docker容器工具诞生以来,当我们在正式线上环境进行容器部署以及容器管理任务时,通常容器之间是需要进行数据通信的,来支撑正常业务运转.因此容器间的通信也随之成为热点,也是生产环境中的重中之重. ...

  7. 【Docker篇】Docker的基本组成,底层原理分析

    文章目录 1. Docker的基本组成 1.1 Docker的架构图 1.2 几个名词解释 2. Run的执行原理 3. Docker底层工作原理 Docker官网: https://www.dock ...

  8. 【云原生Docker篇】Docker Cgroups资源控制管理

    一.cgroups简介 cgroups,是一个非常强大的linux内核工具,他不仅可以限制被namespace 隔离起来的资源,还可以 为资源设置权重.计算使用量.操控进程启停等等.所以cgroups ...

  9. 【docker】拉取一个基础镜像然后制作自己的镜像并复用

    今天下午,我再一次地被部署一个模型时因为没有网络而导致的复杂无比的环境依赖而折腾的手忙脚乱.因此,我觉得必须要把docker的基本操作路线打通一下了. 软件环境 docker:19.03.8 操作系统 ...

最新文章

  1. 计算机组成原理考试计算题,计算机组成原理常考计算题.doc
  2. android播放页蒙层过渡效果,EasyGuideLayer: 这可能是最简单、灵活、强大的页面蒙层组件了!...
  3. linux内核丢弃udp报文,c++ Linux UDP数据包丢失的原因
  4. 关于mysql中truncate
  5. linux网络编程一:主机字节序与网络字节序的的判断
  6. 基于阿里云搭建的适合初创企业的轻量级架构--架构总结
  7. 【数据平台】Pytorch库初识
  8. java中日期格式转换
  9. 沫沫金:联想E431 1K6安装Windows系统100%成功技巧
  10. 前端教程丨手把手教你用 Next.js 搭建个人博客,从入门到吃鸡
  11. SAP UI5 未来发展的趋势之一:拥抱 TypeScript
  12. 我到底去考研,还是工作啊?好纠结
  13. 随机数的扩展--等概率随机函数的实现
  14. 【CodeForces - 289C】Polo the Penguin and Strings (水题,字符串,思维构造,有坑)
  15. c++ 航空管理系统_浅谈航站楼能源管理系统的设计与应用
  16. ELK详解(十七)——filebeat输出到Redis和Elasticsearch实战
  17. 决策控制方法:sequential 规划、behavior-aware规划、端到端规划
  18. [HDU6070] Dirt Ratio
  19. html修改页面图片大小,css怎么改变图片大小?
  20. Access denied for user ''@'localhost' to database

热门文章

  1. Android字体资源
  2. python爬虫兼职-学会Python有哪些可以做的兼职?
  3. ubuntu 下测试摄像头过程
  4. 机器人操作系统ROS Indigo 入门学习(18)——ROS wiki导航
  5. mysql replace first_Java字符串的替换(replace()、replaceFirst()和replaceAll())
  6. SQL定义语言(ACCESS2000中的语法)
  7. ADO连接Access数据库,Access版本问题
  8. 记录自己学习GD32F103R 使用fmc的过程
  9. 全国31省份双碳经济数据(2005-2020年)
  10. IPHONE 设置 铃声 方法