Docker 编译Java 镜像

1.编写docker文件
FROM openjdk:8-jdk-alpine
# 维护者
MAINTAINER 1073769166@qq.com
# 描述
LABEL description="品吸机单独管理后台"
# 设置时间
ENV TZ=Asia/Shanghai
# 设置时区
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
# 添加字体 (如果二维码显示不出来)
RUN apk add --update font-adobe-100dpi ttf-dejavu fontconfig
# 建一个文件夹,我觉得没什么用,可能更整洁一点吧。后面的映射路径要写好
RUN mkdir /soft
WORKDIR /soft
VOLUME ["/data/logs","/data/storage","/data/temp"]
# 复制jar包信息
# ADD manager-appDev-0.1-exec.jar app.jar
COPY manager-appDev-0.1-exec.jar /soft/app.jar
# 对外开放的接口
EXPOSE 8073
ENTRYPOINT java $JAVA_OPTS -Dfile.encoding=utf-8 -jar /soft/app.jar "$0" "$@"
2.编译镜像文件
# -t 镜像
# . 当前路径
docker build -t Manager .
3.运行镜像
# 查看镜像信息
docker ps

# 根据镜像ID 运行镜像
docker run -i -t --name manager_single 935d530af418 --spring.redis.host=192.168.50.84

docker run -i -t -d -p 8073:8073 -e JAVA_OPTS="-Xmx1G -Xms512M" --name manager_single --restart=always aeb7e4e5bf7f --spring.redis.host=192.168.50.84

docker run -i -t -d -p 8073:8073 -e JAVA_OPTS="-Xmx1G -Xms512M" --name manager_single --restart=always -v /D/Docker:/soft/logs/ -v /D/Docker:/soft/storage/ -v /D/Docker:/soft/temp/ f7e37c794679 --spring.redis.host=192.168.50.84

4.导出镜像
# 最好在指定目录下导出,其他地方导出 出现权限异常的情况
docker save -o imager_name.tar REPOSITORY:TAG
5.镜像导入
docker load<D:\Docker\images\manager_single.tar