服务器之家

服务器之家 > 正文

使用Docker部署 spring-boot maven应用的方法

时间:2021-02-01 17:32     来源/作者:Ramer-F

本文介绍了使用docker部署 spring-boot maven应用,分享给大家,具体如下:

部署过程分为以下几个步骤:

  • 创建一个简单的spring-boot应用
  • 打包运行应用
  • 容器化应用
  • 在pom文件中添加docker支持
  • 创建docker镜像
  • 运行docker容器
  • 查看正在运行的容器
  • 启动/关闭/重启/删除docker容器

1. 创建一个简单的spring-boot应用

在intellij idea中file->new->project:

使用Docker部署 spring-boot maven应用的方法

使用Docker部署 spring-boot maven应用的方法

然后点next->finish.

2. 打包运行应用

pom.xml中添加依赖:

?
1
2
3
4
<dependency>
  <groupid>org.springframework.boot</groupid>
  <artifactid>spring-boot-starter-web</artifactid>
</dependency>

添加一个控制器:

?
1
2
3
4
5
6
7
@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(没有后缀),内容如下:

?
1
2
3
4
5
6
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支持

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<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进入到当前目录:

?
1
cd z:/desktop/springboot-demo

打包,创建镜像:

?
1
mvn package -dmaven.test.skip=true docker:build

注意: 请确保maven已添加到path中;并且已安装docker,如果没有安装,请访问:  https://www.docker.com/community-edition#/download 下载合适的版本.

6. 运行docker容器

?
1
2
##最好添加--name参数
docker run --name=springboot-docker-demo -p 8080:8080 -t ramer/demo

在浏览器访问: http://localhost:8080/hello

7. 查看正在运行的容器

?
1
cmd: docker ps

8. 启动/关闭/重启/删除docker容器

?
1
cmd: docker start/stop/restart/rm container_id/name

其中:

container_id: 是容器id,执行 docker ps 可查看

name: 是容器的名称,也就是docker run –name后面的名字

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:http://blog.csdn.net/u011699931/article/details/70226504

标签:

相关文章

热门资讯

2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
Intellij idea2020永久破解,亲测可用!!!
Intellij idea2020永久破解,亲测可用!!! 2020-07-29
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总 2020-11-13
yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
返回顶部