1. 程式人生 > >Docker打包jdk以及jar包

Docker打包jdk以及jar包

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= P A T H : 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” ]