java dockerfile

作者:原创时间:2022-03-30
文档

java dockerfile是什么,让我们一起了解一下:

Dockerfile由一行行命令语句组成,并且支持以#开头的注释行。一般Dockerfile分为四部分:基础镜像信息、维护者信息、镜像操作指令、容器启动时执行指令。

Dockerfile 文件是什么?

FROM openjdk:8-jdk-alpine
VOLUME /home/java/docker20181122
ADD szy0.0.1-SNAPSHOT.jar /app.jar
ENTRYPOINT ["java","-jar","/app.jar"]

新建目录:如  /home/java/docker20181122,把打好的jar和Dockerfile文件放到该目录下。

如何构建镜像?

切换到 /home/java/docker20181122目录下,执行构建命令。

docker build -t='szy:v1.1' .

执行日志:

root@localhost docker20181122]# docker build -t='szy:v1.1' .
Sending build context to Docker daemon 48.37 MB
Step 1/4 : FROM openjdk:8-jdk-alpine
 ---> 97bc1352afde
Step 2/4 : VOLUME /home/java/docker20181122
 ---> Running in 15a2a553f721
 ---> b9003f9e6920
Removing intermediate container 15a2a553f721
Step 3/4 : ADD szy0.0.1-SNAPSHOT.jar /app.jar
 ---> b5d1465136f8
Removing intermediate container 95d97ceaca9d
Step 4/4 : ENTRYPOINT java -jar /app.jar
 ---> Running in 4bee057326e8
 ---> a21b67801fe3
Removing intermediate container 4bee057326e8
Successfully built a21b67801fe3

如何编写dockerfile_java?

创建文件夹在/root/dockerfile/java,将jdk-8u261-linux-x64.tar.gz包上传到该目录下,在/root/dockerfile/java目录下创建文件dockerfile_java,内容如下:

FROM centos:7
MAINTAINER anny "[email protected]"
CMD echo "创建文件夹"
RUN \
    mkdir -p /usr/local \
    && mkdir /usr/local/java
CMD echo "复制文件"
COPY jdk-8u261-linux-x64.tar.gz /usr/local/java
CMD echo "安装java"
RUN \
 cd /usr/local/java \
 && tar -zxvf jdk-8u261-linux-x64.tar.gz \
 && mv jdk1.8.0_261/ jdk8 \
 && rm -rf jdk-8u261-linux-x64.tar.gz
CMD echo "设置工作访问时候的WORKDIR路径,登陆落脚点"
ENV MYPATH /usr/local
WORKDIR $MYPATH
CMD echo "配置java与tomcat环境变量"
ENV JAVA_HOME /usr/local/java/jdk8
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV PATH $PATH:$JAVA_HOME/bin
CMD echo "java环境配置完成"
RUN \
  java -version
CMD /bin/bash

以上就是小编今天的分享了,希望可以帮助到大家。

显示全文
java file.exists() java fileinputstream java findfirst java flatmap java dowhile java flink java drools java dto java dynamic java flume java ear java foreach循环 java fork java ecc加密 java formatter java echarts java ehcache java email java empty java encapsulation java field获取值 java field java divide java feign java fastjson java dict java development java fastdfs java dev java dependency java调用asmx接口 java delete java获取绝对值 java调用c++ java调用c++接口 java delegate java decodeuri java decode java调python java decaf