Docker 学习笔记(十三)-- SpringBoot 打包 Docker 镜像

本文档详细介绍了如何从头开始构建一个SpringBoot项目,编写HelloWorld控制器,然后通过DockerFile打包应用,并将其转化为Docker镜像。接着,展示了如何运行这个镜像,以及进行本地接口访问测试。整个过程涵盖了SpringBoot应用的创建、Docker化以及容器化部署的关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、构建 SpringBoot 项目

新建一个项目

在这里插入图片描述

勾选 Spring Web

在这里插入图片描述

编写 controller 测试

/**
 * @desc
 * @auth llp
 * @date 2022年07月14日 23:55
 */
@RestController
public class HelloController {

    @RequestMapping("/hello")
    public String hello(){
        return "Hello Mianbao";
    }
}

启动测试

启动访问接口:localhost:8080/hello

打包

在这里插入图片描述

2、编写 DockerFile

在项目目录下新建 DockerFile 文件

FROM openjdk:8u332-jdk
# 服务器 dockerfile 和 jar 在同级目录
COPY *.jar /app.jar
CMD ["--server.port=8080"]
# 指定容器内要暴露的端口
EXPOSE 8080
ENTRYPOINT ["java","-jar","/app.jar"]

3、上传文件

注意: 文件名改为 Dockerfile 才能自动识别

在这里插入图片描述

4、构建镜像

# 自动识别文件名为 Dockerfile 
[root@localhost idea]$ docker build -t mianbao .
...........
Successfully built 15f61fe4d5a9
Successfully tagged mianbao:latest
# 查看生成的镜像
[root@localhost idea]$ docker images
REPOSITORY   TAG             IMAGE ID       CREATED         SIZE
mianbao      latest          15f61fe4d5a9   4 minutes ago   543MB

5、运行镜像

# 运行镜像
[root@localhost idea]$ docker run -d -P --name mianbao-springboot-web mianbao
6113f852d190e5ae36bcf0058bc1cb8b6ec84bcf190c9d402ea72ae01d0d3ff3
# 查看容器
[root@localhost idea]$ docker ps
CONTAINER ID   IMAGE     COMMAND                  CREATED         STATUS         PORTS          				NAMES
6113f852d190   mianbao   "java -jar /app.jar …"  6 seconds ago   Up 4 seconds   0.0.0.0:49153->8080/tcp   mianbao-springboot-web

6、访问测试

# 访问测试
[root@localhost idea]$ curl localhost:49153
{"timestamp":"2022-07-15T17:13:49.939+00:00","status":404,"error":"Not Found","message":"","path":"/"}
# 访问接口测试
[root@localhost idea]$ curl localhost:49153/hello
Hello Mianbao
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值