前言
Docker技术发展为当前流行的微服务提供了更加便利的环境,使用SpringBoot+Docker部署和发布应用,其实也是一件比较简单的事情。当前,前提是得有Docker的基础。
源码在文末
文末有项目源码的github地址
构建一个SpringBoot项目
本人最早的一篇文章,就是教大家如何使用Spring Initialise工具,快速的创建一个SpringBoot项目,如果还不懂的,可以翻一下本人的第一篇文章,这里就不多讲了。下面贴一下主要的文件内容:
pom文件的大部分内容这里就不贴了,主要贴关键的内容,主要的就是maven-docker的打包插件:
1 | <!-- Docker maven plugin --> |
这里的docker.image.prefix值为:
1 | <docker.image.prefix>happy</docker.image.prefix> |
dockerDirectory配置了Dockerfile的路径为:src/main/docker,所以,我们需要在src/main目录下,创建docker目录,然后创建Dockerfile文件。整体的目录结构如下:
Dockerfile
Dockerfile文件内容如下:
1 | FROM openjdk |
到这里,已经完成了SpringBoot+Docker的配置了,接下来就是打包部署了。
添加测试接口
为了方便测试,可以添加一个GET请求的接口,如下:
1 |
|
maven打包
使用maven构建Dockerfile的命令如下:(先把maven和Docker都设置为国内的源,否则需要build比较长的时间)
1 | mvn package docker:build |
在springboot-docker目录根路径下执行此命令即可。
需要本地安装了Docker才能够打包成功,否则会报错。关于Docker的安装,Linux的用户可以根据我之前的文章进行安装,其他系统的用户可以自行搜索安装即可。推荐使用Linux。
比如本人,Docker是安装在Linux虚拟机上的,直接把springboot-docker目录拷贝到Linux机器上:
执行打包命令,输入如下:
看到BUILD SUCCESS即表示构建成功了,这时候就可以通过docker images命令,查看我们构建的镜像了:
镜像构建完之后,我们还可以把它推到Docker的仓库上。这里就不展开来讲了。
使用该镜像创建容器
命令如下:
1 | docker run -it -d --name springboot -p 8080:8080 happy/springboot-docker |
这里创建并且启动一个容器,命名为springboot,映射端口为8080:8080
可以通过如下命令查看启动日志:
1 | docker logs springboot |
访问测试接口
源码下载
源码我放在github上,欢迎大家关注: