Docker 制作jdk镜像

一、 编写Dockerfie

如下,Dockerfile 与 jdk 的gz包在同一级目录

From centos

MAINTAINER gnauhsil

RUN mkdir /usr/local/jdk8

ADD jdk-8u191-linux-x64.tar.gz /usr/local/jdk8

ENV JAVA_HOME /usr/local/jdk8/jdk1.8.0_191

ENV JRE_HOME /usr/local/jdk8/jdk1.8.0_191/jre

ENV PATH $JAVA_HOME/bin:$PATH

1.基础镜像:FROM java:8,当前镜像是基于哪个镜像的,第一个指令必须是FROM

2.作者:MAINTAINER mynah

3.RUN, 构建镜像时需要运行的指令

4.ADD shop.jar /shop.jar,将宿主机目录下的文件拷贝进镜像且ADD命令会自动处理URL和解压tar包。

5.镜像要暴露的端口,如要使用端口,在执行docker run命令时使用-p生效 EXPOSE 8099

6.在镜像运行为容器后执行的命令: ENTRYPOINT ["java","-jar","/shop.jar"]

7. ENV, 用来在构建镜像过程中设置环境变量。

8. COPY, 类似于ADD,拷贝文件和目录到镜像中。将从构建上下文目录中

<原路径>的文件/目录复制到新的一层的镜像内的<目标路径>位置

9.VOLUME, 容器数据卷,用于数据保存和持久化工作。

10.CMD, 指定一个容器启动时要运行的命令(对一个容器来说是变化的)。Dockerfile中只能有一个CMD命令,多个命令只有最后一个生效!

11. ENTRYPOINT, 指定一个容器启动时要运行的命令(对一个容器往往是固定的),ENTRYPOINT的目的和CMD一样,都是在指定容器启动成为那个徐及其参数!

二、 进行构建

docker build -t jdk8u191:v1 .

如何查看一个挂了的镜像是什么原因,没有日志怎么看?

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值