SpringBoot Docker示例

1.准备好Docker.

    

2.准备SpringBoot项目。结构如下

  

3.pom文件 增加如下内容:

  

 1 <docker.image.prefix>springio</docker.image.prefix>
   2 <!-- tag::plugin[] --> 3 <plugin> 4 <groupId>com.spotify</groupId> 5 <artifactId>dockerfile-maven-plugin</artifactId> 6 <version>1.4.9</version> 7 <configuration> 8 <repository>${docker.image.prefix}/${project.artifactId}</repository> 9 </configuration> 10 </plugin> 11 <!-- end::plugin[] --> 12 13 <!-- tag::unpack[] --> 14 <plugin> 15 <groupId>org.apache.maven.plugins</groupId> 16 <artifactId>maven-dependency-plugin</artifactId> 17 <executions> 18 <execution> 19 <id>unpack</id> 20 <phase>package</phase> 21 <goals> 22 <goal>unpack</goal> 23 </goals> 24 <configuration> 25 <artifactItems> 26 <artifactItem> 27 <groupId>${project.groupId}</groupId> 28 <artifactId>${project.artifactId}</artifactId> 29 <version>${project.version}</version> 30 </artifactItem> 31 </artifactItems> 32 </configuration> 33 </execution> 34 </executions> 35 </plugin> 36 <!-- end::unpack[] -->
../src/main/java/com/docker/dockerdemo/dockerdemo/DockerDemoApplication.java

如下

 1 package com.docker.dockerdemo.dockerdemo;
 2 
 3 import org.springframework.boot.SpringApplication;
 4 import org.springframework.boot.autoconfigure.SpringBootApplication;
 5 import org.springframework.web.bind.annotation.RequestMapping;
 6 import org.springframework.web.bind.annotation.RestController;
 7 
 8 @SpringBootApplication
 9 @RestController
10 public class DockerDemoApplication {
11 
12     @RequestMapping("/")
13     public String home() {
14         return "Hello Docker World";
15     }
16 
17     public static void main(String[] args) {
18         SpringApplication.run(DockerDemoApplication.class, args);
19     }
20 
21 }
application.properties
server.port=8082

根目录创建Dockerfile文件

FROM openjdk:8-jdk-alpine
VOLUME /tmp
ARG JAR_FILE=target/
COPY ${JAR_FILE}/docker-demo-0.0.1.jar app.jar
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

4. 打包

  

mvn package  

 

java -jar target/docker-demo-0.0.1.jar

 访问 http://localhost:8082 看是否正常启动。成功后,开始构建Docker镜像

mvn docker:build 

 5.查看镜像

6.启动镜像

7. 验证 http://localhost:8082

       

 

  源码GitHub: https://github.com/Jode1015/docker-demo

  参照:https://spring.io/guides/gs/spring-boot-docker/

  

posted on 2019-04-19 16:27  旧梦*  阅读(241)  评论(0编辑  收藏  举报

导航