• docker部署jdk21的镜像


    docker

    Docker是一种开放源代码软件,可以帮助开发人员更轻松地创建、部署和运行应用程序。它是一种容器化技术,可以将应用程序及其依赖项打包在一个容器中,从而使应用程序更加便携和可移植。Docker将操作系统、应用程序和硬件虚拟化进行了彻底的分离,使应用程序更加容易运行在不同的计算机环境中。Docker可以快速构建、部署和管理应用程序,从而加快了应用程序的迭代速度。它还可以减少服务器资源的使用,提高系统的可扩展性。
    Docker的目标是为开发人员提供一个简单的方式来构建、发布和运行应用程序,并极大地简化了应用程序的生命周期管理。

    jdk

    JDK (Java Development Kit) 是 Java 开发的标准平台。它包含了 Java 编译器、Java 虚拟机、Java
    标准库等组件,是 Java 开发和运行的必要工具。 JDK 包含了三大部分: Java 编译器:JDK 包含了 Java
    编译器,可以将编写的 Java 代码编译成 Java 字节码; Java 虚拟机:JDK 包含了 Java
    虚拟机(JVM),可以运行编写好的 Java 字节码,实现跨平台的特性; Java 标准库:JDK 包含了 Java
    的标准库,提供了许多常用的 Java 类和接口,使得 Java 开发更加简单、高效。

    部署过程

    下载jdk的tar包(注意cpu架构)

    下载地址

    加载centos的镜像

    docker pull centos
    
    • 1

    启动容器

    docker run -itd --name name -p 11223:11223 --restart always centos bash
    
    • 1

    复制安装包

    docker cp jdk-21.tar.gz name:/usr/local
    
    • 1

    配置环境变量(建议是.bashrc中)

    export JAVA_HOME=/usr/local/jdk-21
    export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib
    export PATH=$JAVA_HOME/bin:$PATH
    
    • 1
    • 2
    • 3

    查看效果

    java -version
    
    • 1

    在这里插入图片描述

    提交镜像

    docker commit -a me -m jdk21 jdk21:1.0
    
    • 1

    后面就可以通过原始镜像创建新的项目了

    遇到的问题

    导出环境变量是在/etc/profile中不生效

    在这里插入图片描述

    原因:

    在Docker中配置/etc/profile文件有时不会生效,因为/etc/profile是在登录时执行的,而Docker中默认情况下没有登录shell。

    解决方案:
    "source /etc/profile" >> /root/.bashrc
    
    • 1
  • 相关阅读:
    QT之QML开发 锚点布局
    【Spring】SpringBoot整合ShardingSphere并实现多线程分批插入10000条数据(进行分库分表操作)。
    关于Redis在windows上运行及fork函数问题
    Apache Ignite 基本概念
    基于Java的酒店管理系统设计与实现
    Python面试题:如何在 Python 中处理大数据集?
    初识vue里的路由
    Rebex Total Pack R6.9 Crack
    HAL库 CubeMX STM32采用SDIO实现对SD卡和NAND Flash的读写
    Python 编写 Flink 应用程序经验记录(Flink1.17.1)
  • 原文地址:https://blog.csdn.net/weixin_44808225/article/details/134533559