dockerfile 封装springboot小项目,并导出

Posted 精神病人思路广,弱智儿童欢乐多

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了dockerfile 封装springboot小项目,并导出相关的知识,希望对你有一定的参考价值。

1、本次镜像的基础镜像是:https://www.cnblogs.com/JoeyWong/p/9173265.html

2、将打包好的项目文件放在与Dockerfile同级的目录下

3、Dockerfile 如下:

# Base os image
FROM centos:jdk8
MAINTAINER Joey <your email>
LABEL Description="This image is javaweb images."  Version="1.0"

#java web
RUN mkdir /home/data

#将项目文件从本地传到镜像中
ADD javaweb-package.zip /home/data

#解压项目 解压后删除多余文件
RUN unzip /home/data/javaweb-package.zip -d /home/data/ && rm -rf /home/data/javaweb-package.zip
 
#授权
RUN chmod -R +x /home/data/javaweb-1.0

#开放8080端口
EXPOSE 8080

#在启动后执行web项目的启动脚本 
ENTRYPOINT ["sh","/home/data/javaweb-1.0/start.sh"]

4、注意点:

  1、项目的解压路径,一开始的时候我没有将项目解压到指定路径,然后生成的镜像中项目都被解压到了 / 目录下,以至于项目始终运行错误

  2、在最后启动后运行项目启动脚本的时候,我的脚本中使用了nohup,后台运行,所以docker run之后 容器就退出运行!!于是我在我的start.sh的脚本末尾添加了tail -f $PRG_DIR/log.log 动态查看日志的命令,至此 搞定!

5、生成镜像,注意 . 很重要

docker build -t javaweb:1.0 .

6、导出镜像,其中

docker save <镜像ID>> /root/javaweb-docker.tar 

以上是关于dockerfile 封装springboot小项目,并导出的主要内容,如果未能解决你的问题,请参考以下文章

10.Docker-----安装初步使用镜像Dockerfile常用指令通过Dockerfile文件封装nginx镜像并优化

springboot中使用dockerfile

docker中使用Dockerfile部署springboot项目

springboot项目docker打包Dockerfile

使用Dockerfile为SpringBoot应用构建Docker镜像

Dockerfile构建Springboot工程镜像并运行(命令详解)