docker-打包jdk以及jar包
Docker打包JDK以及jar包一、创建jdk镜像[dockerhub应该是有的,无需自己创建]:1> 下载基础镜像:docker pull centos:7.2.15112> 下载JDK jdk-8u171-linux-x64.tar.gz[tar -zxvf jdk-8u171-linux-x64.tar.gz 解压
·
Docker打包JDK以及jar包
一、创建jdk镜像[dockerhub应该是有的,无需自己创建]:
1> 下载基础镜像:
docker pull centos:7.2.1511
2> 下载JDK jdk-8u171-linux-x64.tar.gz[tar -zxvf jdk-8u171-linux-x64.tar.gz 解压包与3中的Dockerfile文件同目录]
3> 创建Dockerfile文件:
FROM centos:7.2.1511
RUN mkdir /usr/java
RUN mkdir /usr/java/jdk1.8.0_171
COPY ./jdk1.8.0_171/ /usr/java/jdk1.8.0_171
ENV JAVA_HOME=/usr/java/jdk1.8.0_171
ENV CLASS_PATH=.:$JAVA_HOME/lib
ENV PATH=$PATH:$JAVA_HOME/bin
4> 进入 Dockerfile 所在目录进行构建:
docker build -t jdk8:base .
// jdk8:base 代表 REPOSITORY=jdk8 TAG=base
5> docker images
查看镜像
6> 进入镜像并查看JDK是否安装成功:
docker run -ti --entrypoint=bash jdk8:base
[如执行一次无法进入,继续执行第二次]
java -version
[进入镜像后]
二、基于JDK镜像项目打包: 创建Dockerfile
FROM jdk8:base[JDK镜像]
COPY ./项目名.jar[服务器jar包路径] /项目名.jar[镜像jar包路径]
ENV JAVA_OPTS=""
#设置时区
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN sh -c echo 'Asia/Shanghai' >/etc/timezone
ENTRYPOINT [ "sh", "-c", "java -Dfile.encoding=utf-8 $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /项目名.jar" ]
更多推荐
已为社区贡献1条内容
所有评论(0)