使用自定义 JDK 创建 Docker 个图像

Create Docker Image with Custom JDK

我正在尝试为我的自定义 JDK 安装创建一个 Docker 图像。它只是添加了 Hotswap 代理的 Jetbrains Runtime。我是 docker 图片的新手,创建这样的源图片似乎很难找到清晰的文档。

到目前为止,我的 Docker 文件中有这个,但我真的不知道从这里去哪里:

// Needs a base image, but I'm not sure what

RUN wget https://cache-redirector.jetbrains.com/intellij-jbr/jbr_dcevm-17_0_1-linux-x64-b164.8.tar.gz -O /tmp/jbr-17.0.1.tar.gz && \
    mkdir /usr/lib/jvm/jbr-17.0.1 && \
    tar -xzf /tmp/jbr-17.0.1.tar.gz -C /usr/lib/jvm/jbr-17.0.1

RUN mkdir /usr/lib/jvm/jbr-17.0.1/lib/hotswap && \
    wget https://github.com/HotswapProjects/HotswapAgent/releases/download/1.4.2-SNAPSHOT/hotswap-agent-1.4.2-SNAPSHOT.jar -O /usr/lib/jvm/jbr-17.0.1/lib/hotswap/hotswap-agent.jar

ENV JAVA_HOME /usr/lib/jvm/jbr-17.0.1
RUN export JAVA_HOME

对于如何将其制作成我可以在 Docker 中使用的图像的任何指导,我将不胜感激。

提前致谢!

您的 Dockerfile /Containerfile 必须始终以:FROM 开头。 这表示您已经评论过的基本图像。

基本镜像在大多数情况下是 OS 的极简类型,例如:ubuntu、alpine、redhat 的 ubi 等,它提供文件系统、包管理器等。因此它是可能的使用文件中的 wget、mkdir 等命令。

您的主应用程序以 CMD <yourexe "param1" "parama2" ...>

开头

定义 Dockerfile 后,您可以使用 docker build 创建图像文件。

有关更多信息,请参阅: https://docs.docker.com/develop/develop-images/dockerfile_best-practices/