• 技术文章 >运维 >Docker

    docker自带jdk吗

    长期闲置长期闲置2022-07-22 15:26:58原创177

    docker没有自带jdk;docker容器默认是没有jdk的,如果需要运行java程序则需要宿主机器中安装jdk或者容器中安装jdk,jdk的全称是“Java Development Kit”,指的是java语言的软件开发工具包,主要用于移动设备、嵌入式设备上java应用程序的开发。

    本教程操作环境:linux7.3系统、docker19.03版、Dell G3电脑。

    docker自带jdk吗

    docker容器默认是没有JDK的,如果需要运行Java程序那么要么宿主机器中安装JDK要么容器中安装JDK,

    jdk全称“Java Development Kit”,指的是Java语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序的开发。jdk是java开发的核心,包括了Java运行环境、一堆Java工具和Java基础的类库。

    以下是在容器中安装JDK的方法

    1.在宿主系统下载所需要的jdk版本的gz文件

    2.复制gz文件到容器中的root的用户目录下

    docker cp <path to jdk gz file>/jdk-8u121-linux-x64.tar.gz <容器名称或者ID>:/root

    3.进入容器

    docker exec -it <容器名称或者ID> bash

    4. 在容器中解开gz文件

    cd ~
    tar -zxvf jdk-8u121-linux-x64.tar.gz
    chown root:root ~/jdk1.8.0_121 -R

    5. 建立容器系统的JAVA_HOME目录

    mkdir /usr/lib/jvm

    6.移动jdk目录到JAVA_HOME目录

    mv ~/jdk1.8.0_121 /usr/lib/jvm

    7.安装vim

    yum update
    yum -y install vim*

    8.设置环境变量

    vim ~/.bashrc
     
    export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_121 ## 这里要注意目录要换成自己解压的jdk 目录
    export JRE_HOME=${JAVA_HOME}/jre
    export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
    export PATH=${JAVA_HOME}/bin:$PATH

    9.使得环境变量马上生效

    source ~/.bashrc

    10.验证JDK版本

    java -version

    扩展知识

    jdk(全称为Java Development Kit) 是SunMicrosystems针对Java开发员的产品,它是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。

    JDK是整个JAVA的核心,包括了Java运行环境(Java Runtime Envirnment),一堆Java工具(javac/java/jdb等)和Java基础的类库(即Java API 包括rt.jar)。

    最主流的JDK是Sun公司发布的JDK,除了Sun之外,还有很多公司和组织都开发了属于自己的JDK。IBM公司开发了属于自己的JDK,国内淘宝也开发了属于自己的JDK,各个组织开发自己的JDK都是为了在某些方面得到一些提高,以适应自己的需求。

    JDK是用于构建在 Java 平台上发布的应用程序、applet 和组件的开发环境。它不提供具体的开发软件,它提供的是无论你用何种开发软件写Java程序都必须用到的类库和Java语言规范。

    推荐学习:《docker视频教程

    以上就是docker自带jdk吗的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:Docker
    上一篇:docker的守护式容器是什么 下一篇:docker安装mysql远程不能访问怎么办
    VIP课程(WEB全栈开发)

    相关文章推荐

    • 【活动】充值PHP中文网VIP即送云服务器• docker exec是什么意思• docker能安装oracle吗• docker集群是什么意思• docker的tag是什么• docker和jenkins有什么区别
    1/1

    PHP中文网