ubuntu16.04:基于ubuntu使用Dockerfile创建jdk8

Dockerfile
Dockerfile 是一个文本格式的配置文件, 用户可以使用 Dockerfile 来快速创

建自定义的镜像,
另外,使用Dockerfile去构建镜像好比使用pom去构建maven项目一样,有异曲同

工之妙

Dockerfile基本结构
Dockerfile 由一行行命令语句组成,并且支持以#开头的注释行,一般而言,

Dockerfile 主体内容分为四部分:
基础镜像信息、 维护者信息、镜像操作指令和容器启动时执行指令。

部分 命令
基础镜像信息 FROM
维护者信息 MAINTAINER
镜像操作指令 RUN、(COPY/ADD)、EXPOSE、WORKDIR、

ONBUILD、USER、VOLUME等
容器启动时执行指令 CMD、ENTRYPOINT

Docker使用Dockerffile创建jdk容器

1.启动ubuntu虚拟机
2.打开putty工具
3.更换系统管理员登录
sudo su
4.将下载好的jdk包从计算机中移动到虚拟机中
我这是先把它移入到虚拟机的桌面 /home/tina/Desktop
ubuntu16.04:基于ubuntu使用Dockerfile创建jdk8_第1张图片

5、在putty工具中在/usr/local中创建文件夹java
6、回到/home/tina/Desktop中ls,将里面的jdk8包复制到/usr/local/java中
ubuntu16.04:基于ubuntu使用Dockerfile创建jdk8_第2张图片
代码

cp  jdk-8u221-linux-x64.tar.gz  /usr/local/java

7、好了之后去/usr/local/java中查看 ls,并创建一个文件Dockerfile

代码

touch Dockerfile

ubuntu16.04:基于ubuntu使用Dockerfile创建jdk8_第3张图片

8、编辑Dockerfile

vim Dockerfile
#a.指定基础镜像,并且必须是第一条指令
      FROM ubuntu:latest
      #b.指明该镜像的作者和其电子邮件(这里随便就好)
      MAINTAINER tina "[email protected]"
      #c.在构建镜像时,指定镜像的工作目录,之后的命令都是基于此工作目录,如

果不存在,则会创建目录
      WORKDIR /usr/local/java
      #d.一个复制命令,把jdk安装文件复制到镜像中,语法:ADD ... 

,注意:jdk*.tar.gz使用的是相对路径
      ADD jdk-8u221-linux-x64.tar.gz /usr/local/java/
      #f.配置环境变量
      ENV JAVA_HOME=/usr/local/java/jdk1.8.0_221
      ENV CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
      ENV PATH=$JAVA_HOME/bin:$PATH
      #容器启动时需要执行的命令
      #CMD ["java","-version"]

因为我的Dockerfile文件已经弄了别的内容了就把老师上课的视频截个图,嘿嘿。。。
ubuntu16.04:基于ubuntu使用Dockerfile创建jdk8_第4张图片

9、执行Dockerfile文件,初次依赖镜像的时候会下载相应镜像

  docker build -t jdk8:v1.0 .

注1:-t jdk8:v1.0 给新构建的镜像取名为 jdk8, 并设定版本为 v1.0
注2:注意最后有个点,代表使用当前路径的 Dockerfile 进行构建

10.查看镜像

docker images

ubuntu16.04:基于ubuntu使用Dockerfile创建jdk8_第5张图片
11.创建容器

docker create -it jdk8:v1.0

12.查看容器

docker ps -a 

ubuntu16.04:基于ubuntu使用Dockerfile创建jdk8_第6张图片

13,启动容器

docker start 容器ID

14.进入容器

docker exec -it 容器ID /bin/bash

15.输入java测试
ubuntu16.04:基于ubuntu使用Dockerfile创建jdk8_第7张图片

16.检查是否有问题

 javac

基于ubuntu使用Dockerfile创建MySQL镜像
https://www.jb51.net/article/115422.htm

你可能感兴趣的:(ubuntu16.04:基于ubuntu使用Dockerfile创建jdk8)