本篇内容主要讲解“Docker如何部署spring boot maven应用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Docker如何部署spring boot maven应用”吧!
部署过程分为以下几个步骤:
创建一个简单的spring-boot应用
打包运行应用
容器化应用
在pom文件中添加docker支持
创建docker镜像
运行docker容器
查看正在运行的容器
启动/关闭/重启/删除docker容器
1. 创建一个简单的spring-boot应用
在intellij idea中file->new->project:


然后点next->finish.
2. 打包运行应用
pom.xml中添加依赖:
<dependency>
<groupid>org.springframework.boot</groupid>
<artifactid>spring-boot-starter-web</artifactid>
</dependency>
添加一个控制器:
@controller
public class helloworld{
@getmapping("/hello")
public void helloworld(httpservletresponse response) throws ioexception {
response.getwriter().write("hello spring-boot");
}
}
运行项目,访问: http://localhost:8080/hello,如果出现: hello spring-boot 第二步完成.
3. 容器化应用
在项目目录创建dockerfile文件: src/main/docker/dockerfile(没有后缀),内容如下:
from frolvlad/alpine-oraclejdk8:slim
volume /tmp
add demo-0.0.1-snapshot.jar app.jar
run sh -c 'touch /app.jar'
env java_opts=""
entrypoint [ "sh", "-c", "java $java_opts -djava.security.egd=file:/dev/./urandom -jar /app.jar" ]
其中 demo-0.0.1-snapshot.jar 是项目打包后 /target/ 里面的文件名
4. 在pom文件中添加docker支持
<properties>
<docker.image.prefix>ramer</docker.image.prefix>
</properties>
<build>
<plugins>
<plugin>
<groupid>com.spotify</groupid>
<artifactid>docker-maven-plugin</artifactid>
<version>0.4.11</version>
<configuration>
<imagename>${docker.image.prefix}/${project.artifactid}</imagename>
<dockerdirectory>src/main/docker</dockerdirectory>
<resources>
<resource>
<targetpath>/</targetpath>
<directory>${project.build.directory}</directory>
<include>${project.build.finalname}.jar</include>
</resource>
</resources>
</configuration>
</plugin>
</plugins>
</build>
5. 创建docker镜像
cmd进入到当前目录:
cd z:/desktop/springboot-demo
打包,创建镜像:
mvn package -dmaven.test.skip=true docker:build
注意: 请确保maven已添加到path中;并且已安装docker,如果没有安装,请访问: 下载合适的版本.
6. 运行docker容器
##最好添加--name参数
docker run --name=springboot-docker-demo -p 8080:8080 -t ramer/demo
在浏览器访问: http://localhost:8080/hello
7. 查看正在运行的容器
cmd: docker ps
8. 启动/关闭/重启/删除docker容器
cmd: docker start/stop/restart/rm container_id/name
其中:
container_id: 是容器id,执行 docker ps 可查看
name: 是容器的名称,也就是docker run –name后面的名字
到此,相信大家对“Docker如何部署spring boot maven应用”有了更深的了解,不妨来实际操作一番吧!这里是天达云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!