• 17.Docker之使用dockerfile创建jdk镜像


    熟悉java的都知道如何配置java开发环境,我们基于上一节的nginx:v1.0作为base image来构建新的镜像:

    首先,查看本地的镜像:

    说明:本次dockerfile主要是体现ENV环境配置的用法;

    其次,开始编写dockerfile:

    FROM nginx:v1.0
    
    #MAINTAINER,this dockerfile creater
    MAINTAINER loose@docker.com
    
    #创建/usr/local/jdk目录,用于wget安装包目录
    RUN mkdir /usr/local/jdk
    
    #将jdk.tar.gz包上传到/usr/local/jdk目录中
    ADD jdk-7u80-linux-x64.tar.gz /usr/local/jdk
    #wget jdk到指定目录(jdk下载需要同意license,目前下载的包无法解压,所以jdk不使用wget方式,直接将tar.gz包上传)
    #RUN wget -P /usr/local/jdk  http://download.oracle.com/otn-pub/java/jdk/7u79-b15/jdk-7u79-linux-x64.tar.gz
    #就算命令包含点击同意license,下载的tar.gz包也无法解压
    #wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u111-b14/jdk-7u79-linux-x64.tar.gz
    #配置环境变量 ENV JAVA_HOME /usr/local/jdk/jdk1.7.0_80 ENV PATH $PATH:$JAVA_HOME/bin

    最后,开始构建:

    查看本地镜像:

    通过镜像启动容器并且查看jdk版本:

    最后,再来访问网页,查看nginx是否正常:

    这样,我们该镜像不仅有nginx,而且也集成了JDK !

  • 相关阅读:
    常用sql经典语句
    sql创建 自定义函数返回当前日期所在月的第一天最后一天
    洗洗睡了吧啊,何必在意……费口舌不热么
    asp.net Treeview控件
    MSSQL 触发器
    Mssql 通配符
    C#实现所有经典排序算法
    asp.net Treeview
    Asp.net+json 操作类
    Queue 和Stack 的区别
  • 原文地址:https://www.cnblogs.com/Json1208/p/8972141.html
Copyright © 2020-2023  润新知