使用Docker打包部署SpringBoot应用

10 篇文章 0 订阅
1 篇文章 0 订阅

这个小教程记录怎么在Docker打包、运行自己的SpringBoot应用,基本思路是在自己的程序目录配置自定义的Dockerfile文件,然后利用Docker自带的打包镜像的命令生成本地镜像即可使用。

第零步:

准备Docker运行环境,安装Docker吼吼。

第一步:

在Linux虚拟机上准备Java运行环境,我使用了Java8;

第二步:

将你的SpringBoot程序打包成jar包,可以使用IDEA自带的Maven小工具直接打包成jar包。该jar包内嵌了Tomcat,所以只要操作系统有Java运行环境,直接命令行执行类似“java -jar XXX.jar”就可以运行该jar包程序了。

第三步:

准备SpringBoot应用的jar包和程序文件夹,其中目录:yanru_springboot/eureka相当于程序文件夹 ,文件目录如图,如图我使用了Xftp小工具,本机连接到了我的Linux虚拟机(我学Linux用的虚拟机,本机Windows操作系统),使用Xftp在Windows中操作虚拟机上的文件。

第四步:

配置Dockerfile文件内容,如下截图是我看的老师的课程视频截图,注意Dockerfile文件不需要带文件后缀:

具体Dockerfile文本文字:

# based on whitch image application for keyword "From", then "java:8" means java version 8

From java:8

# put current file into cucrrent container, not necessary

VOLUME /tmp

# copy file to container, attention please, "yanru-springboot.jar“ is the real application name in your folder

ADD yanru-springboot.jar /app.jar

# use whitch port to visit, in my web application, I use 8080 to visit

EXPOSE 8080

# excute whitch command when container started, this command means start my application with java command

ENTRYPOINT ["java", "-jar", "/app.jar"]

第五步:

使用docker build命令构建镜像,注意最后的小点‘.’执行该行命令前,切换到/eureka目录内部,因为这个“.”表示Dockerfile的路径目录,如果直接切换到Dockerfile所在目录直接填"."就可以了。其中yanru_spring_boot表示生成镜像的名称,0.0.1表示镜像的版本号标签,”:“后的版本号标签不是必须的,我从镜像仓库查看的有些镜像也是版本号为空的。

注意,镜像的名称不允许出现大写字母否则会报错的,打包镜像的命令:

# docker build -t yanru_spring_boot:0.0.1 .  

# 格式:docker build -t镜像名称:标签Dockerfie的相对位置

在这里,使用-t选项指定了镜像的标签,执行该命令后,终竦将会输出如下的内容:

最后输出成功,表示成功生成一个镜像。

第六步:

使用docker images 查看当前所有的镜像,确保镜像存在,镜像如果真的存在,下一步就可以启动容器了

第七步:

运行容器以启动一个镜像,命令如题,启动容器后顺手执行下docker ps以确认你的容器正在运行:

其中8080是镜像内部的程序原本使用的端口,8762是宿主机访问端口,我故意区分了一下。

第八步:

测试容器运行效果,访问应用程序:

我的测试小程序是一个Web小应用。其中前面的IP是我的虚拟机内网地址,http://192.168.26.132:8762/index.html

运行效果,嘿嘿,这是我做的一个简单的计算器小程序哈哈。(* ̄︶ ̄)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值