最小的基础镜像–alpine
docker images alpine latest a24bb4013296 3 months ago 5.57MB
但是基础镜像是无法引入宿主机的jdk环境,无法进行对java程序的编译工作,所以引入
frolvlad/alpine-glibc latest 4c5945fbf221 4 weeks ago 17.9MB
具体的Dockerfile文件
FROM frolvlad/alpine-glibc:latest
MAINTAINER dev
ENV JAVA_HOME /jdk
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV PATH $PATH:$JAVA_HOME/bin:$JAVA_HOME/sbin
#更新Alpine的软件源为国内 安装bash环境
RUN echo "https://mirror.tuna.tsinghua.edu.cn/alpine/v3.4/main/" > /etc/apk/repositories
RUN apk update \
&& apk upgrade \
&& apk add --no-cache bash \
bash-doc \
bash-completion \
&& rm -rf /var/cache/apk/* \
&& /bin/bash
#jar 包执行命令
ENV DEV_JAR="java -jar $JAVA_OPTS /register.jar $PARAMS"
ENV TZ=PRC
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
#容器运行脚本
ENTRYPOINT ["sh","-c","java -jar xxx $DEV_JAR"]
运行多个jar的话可以用’&'连接如
ENTRYPOINT ["sh","-c","java -jar xxx $DEV_JAR & $jar_a & ..."]