Dockerfile构建SpringBoot项目Docker镜像

1、创建SpringBoot项目

2、编写Controller

@RestController
@RequestMapping("/hello")
public class HelloController {

    @PostMapping(value = "/test")
    public String hello(){
        return "hello";
    }
}
View Code

3、使用maven将项目打成jar包

mvn clean package

4、在服务器上创建目录test_demo

mkdir -p /root/demo

5、将demo.jar上传到/root/test_demo

6、在/root/test_demo目录创建Dockerfile文件

1 FROM java:8
2 MAINTAINER lsj
3 LABEL name="demo" version="1.0.0" author="lsj"
4 COPY demo-0.0.1-SNAPSHOT.jar demo.jar
5 EXPOSE 8080
6 CMD ["java","-jar","-Dfile.encoding=UTF-8","-Xms1024m","-Xmx1024m","demo.jar"]
View Code

7、使用当前目录的Dockerfile构建镜像

[root@localhost demo]# docker build -t demo:1.0.0 .
 1 Sending build context to Docker daemon  22.78MB
 2 Step 1/6 : FROM java:8
 3  ---> d23bdf5b1b1b
 4 Step 2/6 : MAINTAINER lisujing
 5  ---> Using cache
 6  ---> 518e23e7be30
 7 Step 3/6 : LABEL name="demo" version="1.0.0" author="lisujing"
 8  ---> Using cache
 9  ---> dd3e127965dc
10 Step 4/6 : COPY demo-0.0.1-SNAPSHOT.jar demo.jar
11  ---> c0a44dca364f
12 Step 5/6 : EXPOSE 8080
13  ---> Running in 345d76f4c2a8
14 Removing intermediate container 345d76f4c2a8
15  ---> 5316c8657bc7
16 Step 6/6 : CMD ["java","-jar","-Dfile.encoding=UTF-8","-Xms1024m","-Xmx1024m","demo.jar"]
17  ---> Running in 4531da890759
18 Removing intermediate container 4531da890759
19  ---> 50c7df53c53f
20 Successfully built 50c7df53c53f
21 Successfully tagged demo:1.0.0

8、基于镜像创建容器

[root@localhost demo]# docker run --privileged=true -d --name demo -p 8081:8080 demo:1.0.0
3f34592c62de4b2367f35675c21b9a9a7e64613b942c868b0e002ff27fecbd94

9、查看容器

[root@localhost demo]# docker ps

10、查看容器运行日志

[root@localhost demo]# docker logs -f demo

11、验证

[root@localhost demo]# curl -X POST localhost:8084/hello/test
hello

 

posted @ 2021-03-30 09:18  Susie_Li  阅读(370)  评论(0)    收藏  举报