自己制作一个java:11的docker镜像

自己制作一个java:11的docker镜像

1、资源准备

下载java11的jdk

下载地址:https://www.oracle.com/java/technologies/javase-jdk11-downloads.html

选择linux-64的版本(jdk-11.0.7_linux-x64_bin.tar.gz)

2、创建Dockerfile文件

文件内容如下:

#1.指定基础镜像,并且必须是第一条指令
FROM centos:7

#2.指明该镜像的作者和其电子邮件
MAINTAINER taolong.hong "taolong.hong@qq.com"

#3.在构建镜像时,指定镜像的工作目录,之后的命令都是基于此工作目录,如果不存在,则会创建目录
WORKDIR /soft/jdk

#4.一个复制命令,把jdk安装文件复制到镜像中,语法:ADD <src>... <dest>,注意:jdk*.tar.gz使用的是相对路径
ADD jdk-11.0.7_linux-x64_bin.tar.gz /soft/jdk/

#5.设置时区
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo 'Asia/Shanghai' >/etc/timezone

#6.配置环境变量
ENV JAVA_HOME=/soft/jdk/jdk-11.0.7
ENV CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV PATH=$JAVA_HOME/bin:$PATH

#容器启动时需要执行的命令
#CMD ["java","-version"]

上面都写了注释,也比较简单,不多说了

3、构建镜像(docker build)

我这里jdk-11.0.7_linux-x64_bin.tar.gz 和Dockerfile放在同一个目录下面的,直接用docker build指定当前路径即可

docker build -t “仓库路径xxx/java:11” .

注意后面的“.”表示当前路径,如果不是当前路径需要用-f指定

4、推送到远程仓库

前面如果-t指定了仓库的路径,则直接使用docker push即可 ,否则用docker tag

5、测试

(1)测试centos时区:进入容器输入date

(2)测试java环境:进入容器输入java -version

(3)测试jdk时区:编写一个.java文件,里面打印LocalDateTime打印时间

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/111203.html原文链接:https://javaforall.net

(0)
上一篇 2021年8月4日 上午9:00
下一篇 2021年8月4日 上午9:23


相关推荐

  • idea 启动docker镜像「建议收藏」

    idea 启动docker镜像「建议收藏」idea启动docker镜像(基于docker镜像已经打好)也是第一次使用。欢迎补充哈~

    2025年11月18日
    8
  • docker mysql 蜂巢_在网易蜂巢中创建和管理Docker容器的教程

    docker mysql 蜂巢_在网易蜂巢中创建和管理Docker容器的教程创建容器点击左侧的导航菜单 容器管理 进入容器管理列表页 通过点击容器列表左上角的 创建容器 按钮可进入创建容器页面 如下图所示 其中带 为必填项 选择镜像可选择的镜像分为 我的镜像 和 官方镜像 我的镜像我的镜像中为用户自定义的镜像以及在蜂巢镜像中心收藏的镜像 如下图所示 其中 收藏的镜像会在镜像右上角用星号标记 注意 默认显示的镜像数量有限 你可以点击右上角 全部显示 查看所有镜像 官

    2026年3月18日
    2
  • docker 开启2375端口,提供外部访问docker

    docker 开启2375端口,提供外部访问docker编辑docker文件:/usr/lib/systemd/system/docker.servicevim/usr/lib/systemd/system/docker.service修改ExecStart行为下面内容ExecStart=/usr/bin/dockerd-Htcp://0.0.0.0:2375-Hunix://var/run/docker.sock\…

    2022年4月29日
    47
  • pycharm 远程调试docker 中的Python脚本

    pycharm 远程调试docker 中的Python脚本一 远程服务器以及 docker 配置 ssh1 原理将 docker 中的 ssh 端口 22 映射到服务器中的某一个端口 例如 9999 本地使用 docker 的用户名和密码登录 9999 端口 也就登录了相应的 docker2ssh 配置步骤运行 docker 镜像 并且指定相应的端口映射关系 NV GPU 5nvidia dockerrun tinamemy tensorflow1 9 py3

    2026年3月27日
    2
  • Jenkins(2)docker容器中安装python3「建议收藏」

    Jenkins(2)docker容器中安装python3「建议收藏」前言使用docker安装jenkins环境,jenkins构建的workspace目录默认是在容器里面构建的,如果我们想执行python3的代码,需进容器内部安装python3的环境。进jenki

    2022年7月29日
    10
  • 群晖docker使用教程_docker的使用

    群晖docker使用教程_docker的使用概括Docker与传统虚拟机的区别与传统虚拟机的区别Docker的安装的安装Dockerdaemon,client,containerd镜像与容器操作容器运行配置Docker网络配置网络配置AlpineDockerImage制作自己的DockerImageDocker安全性问题安全性问题Dock

    2022年10月9日
    8

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号