有事没事领个红包

使用dockerfile 构建springboot 的docker镜像

1 新建一个 springboot 项目,并将其打包成 jar 文件。生成demo1.jar 文件

请参考 使用springBoot搭建REATFul风格的web demo

 

2 编写 dockerfile 文件

FROM openjdk:8-jre-alpine
VOLUME /tmp
COPY demo1.jar /usr/src/
WORKDIR /usr/src CMD [
"java","-jar","demo1.jar"] EXPOSE 8080

说明:

FROM java:8:指Docker Hub上官方提供的java镜像,有了这个基础镜像后,Dockerfile可以通过FROM指令直接获取它的状态——也就是在容器中java是已经安装的,接下来通过自定义的命令来运行Spring Boot应用。

VOLUME /tmp:创建/tmp目录并持久化到Docker数据文件夹,因为Spring Boot使用的内嵌Tomcat容器默认使用/tmp作为工作目录。使容器中的一个目录具有持久化存储数据的功能,该目录可以被容器本身使用,也可以共享给其他容器。当容器中的应用有持久化数据的需求时可以在Dockerfile中使用该指令。

ADD demo1.jar app.jar将应用jar包复制到/app.jar

ENTRYPOINT:表示容器运行后默认执行的命令,可以多次设置,但是只有最后一个有效。

 构建镜像

docker build . -t demo1:1.0.0-SNAPSHOT

 

后续构建镜像、运行容器过程请参考使用 dockerfile 创建镜像

 

posted @   crazyCodeLove  阅读(642)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示