docker自带jdk吗

发布时间 - 2022-07-22 00:00:00    点击率:
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 /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  # 自己的  # 工具包  # 应用程序  # 主要用于  # 运行环境  # 类库  # 自带  # 指的是  # 开发了  # 的是 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 魔毅自助建站系统:模板定制与SEO优化一键生成指南  Laravel如何获取当前用户信息_Laravel Auth门面获取用户ID  Laravel如何集成Inertia.js与Vue/React?(安装配置)  如何自己制作一个网站链接,如何制作一个企业网站,建设网站的基本步骤有哪些?  Android Socket接口实现即时通讯实例代码  Laravel怎么返回JSON格式数据_Laravel API资源Response响应格式化【技巧】  香港服务器部署网站为何提示未备案?  重庆市网站制作公司,重庆招聘网站哪个好?  laravel怎么配置和使用PHP-FPM来优化性能_laravel PHP-FPM配置与性能优化方法  Laravel Fortify是什么,和Jetstream有什么关系  微信小程序 input输入框控件详解及实例(多种示例)  edge浏览器无法安装扩展 edge浏览器插件安装失败【解决方法】  HTML透明颜色代码怎么让图片透明_给img元素加透明色的技巧【方法】  如何用搬瓦工VPS快速搭建个人网站?  如何选择可靠的免备案建站服务器?  Laravel Telescope怎么调试_使用Laravel Telescope进行应用监控与调试  LinuxShell函数封装方法_脚本复用设计思路【教程】  微信公众帐号开发教程之图文消息全攻略  JavaScript数据类型有哪些_如何准确判断一个变量的类型  Win11应用商店下载慢怎么办 Win11更改DNS提速下载【修复】  android nfc常用标签读取总结  Win11怎么关闭资讯和兴趣_Windows11任务栏设置隐藏小组件  iOS正则表达式验证手机号、邮箱、身份证号等  Laravel Eloquent关联是什么_Laravel模型一对一与一对多关系精讲  如何在云虚拟主机上快速搭建个人网站?  Laravel中间件起什么作用_Laravel Middleware请求生命周期与自定义详解  Laravel PHP版本要求一览_Laravel各版本环境要求对照  Laravel如何使用Gate和Policy进行授权?(权限控制)  如何在景安云服务器上绑定域名并配置虚拟主机?  nodejs redis 发布订阅机制封装实现方法及实例代码  网站广告牌制作方法,街上的广告牌,横幅,用PS还是其他软件做的?  高防服务器租用首荐平台,企业级优惠套餐快速部署  🚀拖拽式CMS建站能否实现高效与个性化并存?  Laravel项目如何进行性能优化_Laravel应用性能分析与优化技巧大全  EditPlus中的正则表达式 实战(4)  如何在宝塔面板创建新站点?  Laravel如何处理JSON字段_Eloquent原生JSON字段类型操作教程  昵图网官网入口 昵图网素材平台官方入口  如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?  Win10如何卸载预装Edge扩展_Win10卸载Edge扩展教程【方法】  如何注册花生壳免费域名并搭建个人网站?  Laravel怎么防止CSRF攻击_Laravel CSRF保护中间件原理与实践  高性能网站服务器配置指南:安全稳定与高效建站核心方案  Python文件操作最佳实践_稳定性说明【指导】  实现点击下箭头变上箭头来回切换的两种方法【推荐】  Laravel如何理解并使用服务容器(Service Container)_Laravel依赖注入与容器绑定说明  如何快速重置建站主机并恢复默认配置?  Linux系统命令中screen命令详解  如何用wdcp快速搭建高效网站?  Python并发异常传播_错误处理解析【教程】