# 基础镜像使用java
FROM openjdk:8-jdk-alpine
# 作者
MAINTAINER zy admin@zy.com
# 最后更新时间
ENV REFRESHED_AT 2021-01-18
# 允许指定端口转发
EXPOSE 8080
# 其效果是在主机 /var/lib/docker 目录下创建了一个临时文件,并链接到容器的/tmp
VOLUME /tmp
# 将jar包添加到容器中并更名为app.jar,前面为原名,后面修改后的
WORKDIR /data
RUN mkdir logs
ADD app.jar app.jar
# 修改时区
ENV TZ=Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
# 解决中文乱码
ENV LANG en_US.UTF-8
# 更换Alpine源为mirrors.ustc.edu.cn 图片报错问题
RUN echo -e "https://mirrors.ustc.edu.cn/alpine/v3.3/main" > /etc/apk/repositories \
&& echo "https://mirrors.ustc.edu.cn/alpine/v3.3/community" >> /etc/apk/repositories \
&& apk add --update ttf-dejavu fontconfig && rm -rf /var/cache/apk/*
# 项目运行变量 默认prod,
# 可以在build的时候通过docker build --build-arg profiles=xxx 来传递参数,
# 也可以通过在运行的时候通过docker run -e profiles=yyy 来传递参数。
ARG profiles
# 运行jar包
# -c为清除以前启动的数据
# 加快随机数产生过程-Djava.security.egd=file:/dev/./urandom
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/data/app.jar","--spring.profiles.active=${profiles:prod}","-c"]
部署springboot的Dockerfile
最新推荐文章于 2024-03-17 11:24:54 发布