SpringBoot项目创建
创建了一个简单的SpringBoot项目,有一个Controller类,该中有一个方法,请求路径为hello
,访问该路径返回hello docker
。
手动打包使用Dockfile + 命令部署
前提条件:MAC上的Docker服务已经启动
1.执行Maven的Package命令进行打包
打完包的jar包名称为:springbootclean-0.0.1-SNAPSHOT.jar
。
2.在打完包的Jar文件目录target下编写Dockfile文件
注意
Dockfile
的命令,除了首字母外,其余字母均小写,否则构建运行的时候会报错。jar包与dockfile需位于同一目录下。
FROM openjdk:8
# 作者
MAINTAINER nangumei
# 将本地AR包打包到容器中
ADD springbootclean-0.0.1-SNAPSHOT.jar hellodocker.jar
# 运行jar包
ENTRYPOINT ["java","-jar","hellodocker.jar"]
# 暴露端口
EXPOSE 8989
3.根据Dockfile构建镜像
在target目录下执行命令:docker build -t hellodocker:1.0 .
,该命令的意思为构建一个名为hellodocker
的镜像,其版本为1.0
。
- 构建过程截图
4.依据镜像生成容器运行
在target目录下执行命令:docker run -d -p 8989:8989 --name hellodocker hellodocker:1.0
,该命令的意思为:根据名为hellodocker:1.0
的镜像生成名为hellodocker
的容器,并将宿主机的8989
端口映射到容器的8989
端口。 -d 为后台运行,-p 为端口暴露
。
运行容器后,可在DockerDesktop进行状态的查看:
可以在容器列表的最右侧点击竖着的三个点查看容器日志等信息。
5.访问测试
在浏览器输入http://localhost:8989/hello
,页面显示hello docker!
。部署成功!
使用Idea docker插件进行部署
1.安装idea插件
2.配置docker相关信息
该配置页面的Before lanuch为在构建之前要做什么处理,这里我选择Maven 的clean命令,可根据需要自行选择。
3.运行
选择右上角的helloDocker 运行
4.访问测试
在浏览器输入http://localhost:8989/hello
,页面显示hello docker!
。部署成功!