一、下载centos镜像
下载自己需要的版本TAG,详见:
$ sudo docker pull centos:centos7
二、下载jdk1.8,并上传到/usr/local/src目录,然后解压
$ sudo cd /usr/local/src
$ sudo tar zxf jdk-8u201-linux-x64.tar.gz
$ sudo ls
jdk1..0_201 jdk-8u201-linux-x64.tar.gz
三、创建Dockerfile
先在/usr/local目录下创建jdk目录,并将/usr/local/src下的jdk-8u201-linux-x64.tar.gz复制到/usr/local/jdk目录下,然后创建Dockerfile文件
$ sudo mkdir /usr/local/jdk
$ sudo cd /usr/local/jdk
$ sudo cp ../src/jdk-8u201-linux-x64.tar.gz ./
$ sudo ls
jdk-8u201-linux-x64.tar.gz
$ sudo vi Dockerfile
FROM centos:centos7
MAINTAINER tom
RUN mkdir /usr/local/jdk
WORKDIR /usr/local/jdk
ADD jdk-8u201-linux-x64.tar.gz /usr/local/jdk
ENV JAVA_HOME /usr/local/jdk/jdk1..0_201
ENV JRE_HOME /usr/local/jdk/jdk1..0_201/jre
ENV PATH $JAVA_HOME/bin:$PATH
四、使用Dockerfile构建jdk1.8镜像
$ sudo docker build -t jdk1. .
Sending build context to Docker daemon .8MB
Step / : FROM centos:centos7
---> 9f38484d220f
Step / : MAINTAINER tom
---> Running in 9ebabac7e9e0
Removing intermediate container 9ebabac7e9e0
---> 6e65e30640c0
Step / : RUN mkdir /usr/local/jdk
---> Running in 5805a4f50285
Removing intermediate container 5805a4f50285
---> 8ebaedf8bd72
Step / : WORKDIR /usr/local/jdk
---> Running in c68e7f94ce6d
Removing intermediate container c68e7f94ce6d
---> f4df19bf9468
Step / : ADD jdk-8u201-linux-x64.tar.gz /usr/local/jdk
---> 1fa5d55acc2e
Step / : ENV JAVA_HOME /usr/local/jdk/jdk1..0_201
---> Running in c9c93a299d59
Removing intermediate container c9c93a299d59
---> 09b5bfd906dc
Step / : ENV JRE_HOME /usr/local/jdk/jdk1..0_201/jre
---> Running in d4509f0c2af8
Removing intermediate container d4509f0c2af8
---> 1d6b070b3985
Step / : ENV PATH $JAVA_HOME/bin:$PATH
---> Running in 190dde73be87
Removing intermediate container 190dde73be87
---> 50016b7aac0c
Successfully built 50016b7aac0c
Successfully tagged jdk1.:latest
五、在镜像仓库中查看是否构建成功
$ sudo docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
jdk1. latest 50016b7aac0c seconds ago 598MB
六、启动jdk容器
$ sudo docker run -di --name=jdk1. jdk1.
e04f670691cd301b28fb56c25b12eae4851f583fa7abac367164a0ee68ad7241
七、进入jdk容器,查看是否安装正确(即查看安装之后的目录)
$ sudo docker exec -it jdk1. /bin/bash
[root@7d539233feb0 jdk]# pwd
/usr/local/jdk
[root@7d539233feb0 jdk]# ls
jdk1..0_201
docker: 构建自己的镜像
我们给予ubuntu的镜像然后拷贝python的requirement.txt文件进去,再根据这个文件安装对应的python库 拷贝文件到docker容器.首先查找对应的容器ID.然后执行命令 doc ...
Docker构建一个node镜像
0. 设置国内docker镜像源 进入Settings->Daemon->Advanced,添加如下配置. { "registry-mirrors": [ " ...
docker构建一个简易镜像
一 下载centos镜像 docker pull centos 二 启动镜像 [root@Centos-node3 ~]# docker run -it --name my_ng centos bas ...
使用Docker构建基于centos7镜像的python环境
Dcokerfile配置信息 ############################################## # 基于centos7构建python3运行环境 # 构建命令: 在Dock ...
Docker教程:镜像构建和自动镜像构建dockerfile
http://blog.csdn.net/pipisorry/article/details/50805379 Docker透过Dockerfile来记录建立Container映象文件的每一个步骤,可 ...
Docker 使用 Dockerfile 构建自己的镜像
可以使用Dockerfile的配置文件方式进行构建自己的镜像 下面利用docker构建一个Caddy web服务器 构建脚本 Dockerfile有自己的命令,下面使用了一些比较常用的命令,更多的Do ...
物联网架构成长之路(25)-Docker构建项目用到的镜像1
0. 前言 现在项目处于初级阶段,按照规划,先构建几个以后可能会用到的Image,并上传到阿里云的Docker仓库.以后博客中用到的Image,大部分都会用到这几个基础的Image,构建一个简单的物联 ...
Docker 构建镜像
Docker 构建镜像 1.首先,在项目的根目录下,新建一个文本文件.dockerignore,写入下面的内容. 下面三行代码表示: 1.这三个路径要排除,不要打包进入 image 文件. 2.如果你 ...
docker构建自定义镜像
docker构建自定义镜像 要构建一个镜像,第一步准备所需要的文件,第二步编写Dockerfile文件,比如我现在构建一个java web镜像 第一步:准备java web工程的war包文件(这里假设 ...
随机推荐
Java解析文本
import java.io.*; import java.util.*; public class FileManager { public List parseFile ...
Java 8 中新的 Date 和 Time 类入门详解
这篇文章主要是java8中新的Date和Time API的实战.新的Date和Time类是java开发者社区千呼万唤始出来的.Java8 之前存在的Date类一直都受人诟病,很多人都会选择使用第三方的 ...
MVC — 第 6 天
7 天玩转 ASP.NET MVC — 第 6 天 目录 第 1 天 第 2 天 第 3 天 第 4 天 第 5 天 第 6 天 第 7 天 0. 前言 欢迎来到第六天的 MVC 系列学习中.希望 ...
Task Cancellation: Parallel Programming
http://beyondrelational.com/modules/2/blogs/79/posts/11524/task-cancellation-parallel-programming-ii ...
Java集合常见面试题集锦
1.介绍Collection框架的结构 集合是Java中的一个非常重要的一个知识点,主要分为List.Set.Map.Queue三大数据结构.它们在Java中的结构关系如下: Collection接口 ...
通过 docker 搭建自用的 gitlab 服务
前言 git 是当下如日中天的版本管理系统.现在如果不是工作在 git 版本管理系统之下,几乎都不好意思和人打招呼了.有很多现成的互联网的 git 服务提供给大家使用,例如号称程序员社交网络的 Git ...
QMQ去哪儿网-mq中间件(启动失败)
简介 去哪儿网近日宣布开源其内部广泛使用的消息中间件 QMQ .QMQ 自 2012 年诞生以来在去哪儿网所有业务场景中广泛的应用,包括跟交易息息相关的订单场景: 也包括报价搜索等高吞吐量场景.目前在 ...
Java学习笔记之——内部类
内部类 形式:把一个类定义在一个类的内部. 分为:成员内部类和匿名内部类重点掌握 a) 成员内部类 b) 静态成员内部类 c) 匿名内部类 d) 局部内部类 (1)成员内部类: Java的语言是面向对 ...
面试常问Spring IOC,不得不会。
广义的 IOC IoC(Inversion of Control) 控制反转,即“不用打电话过来,我们会打给你”. 两种实现: 依赖查找(DL)和依赖注入(DI). IOC 和 DI .DL 的关系( ...
【读书笔记】iOS-优化iOS Web应用
一,代码优化: 代码优化是任何优化技术的第一步,因为归根结底网页上的一切都是构建在代码之上的.优秀的代码可以节省宽带,减少渲染延迟,以及提高页面的可读性和长远的可维护性.下面列出了一些在Web应用中编 ...