Docker Desktop下部署springboot项目

一、前言

本文是基于windows10版本下的docker desktop来演示的,所以你需要自行安装docker desktop,可以是windows,也可以是mac,根据自己的电脑进行选择即可。

二、创建springboot项目

创建一个springboot web项目,这个比较简单,就不演示具体步骤了,创建好如下图所示:

项目创建好之后,我们添加一些测试代码,方便后面测试使用,如下图所示:

三、打包项目

执行maven的package打包命令,打成jar包,如下图所示:

四、编写Dockfile文件

解释:

  • FROM 是你docker下安装的jdk镜像
  • EXPOSE 仅仅只是声明端口
  • ARG 是构建参数,与 ENV 作用一致
  • ADD 从上下文目录中复制文件或者目录到容器里指定路径,和COPY用法类似
  • ENTRYPOINT 类似于 RUN 指令,用于运行程序

五、执行打包镜像命令

1、找到你刚创建的项目的根目录,如下图所示

2、然后在地址栏中输入cmd,按回车键

3、然后执行创建镜像的命令

命令:

docker build -f Dockerfile -t my-docker-spring-boot:1.0.0 .

解释:

  • -f 指定Dockerfile文件
  • -t 指定镜像名称与版本号

执行结果:

4、查看镜像

如下图所示,我们的镜像创建成功了,接下来就可以使用这个镜像了。

六、运行

命令:

docker run -p 8888:8888 --name my-docker-spring-boot my-docker-spring-boot:1.0.0

解释:

  • -p 8888:8888 指定宿主机端口8888映射到docker容器端口8888
  • --name 容器的名称,我们这里是my-docker-spring-boot
  • my-docker-spring-boot:1.0.0 指定版本的镜像

七、测试

### 如何在 Docker Desktop部署 Spring Boot 项目 #### 准备工作 为了确保顺利部署,需确认已安装 Docker Desktop 并正常运行。此外,还需准备一个可执行的 Spring Boot 应用程序 JAR 文件。 #### 构建 Dockerfile 创建一个新的文件名为 `Dockerfile` 的文件,在同一目录下放置 Spring Boot 应用程序的构建成果(JAR 文件)。以下是适用于大多数 Spring Boot 应用的标准 Dockerfile 模板: ```dockerfile FROM openjdk:17-jdk-alpine VOLUME /tmp ARG JAR_FILE=target/*.jar COPY ${JAR_FILE} app.jar ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"] ``` 此模板定义了一个基于 OpenJDK 17 的轻量级 Alpine Linux 映像,并指定了应用程序入口点为 Java 进程启动命令[^2]。 #### 创建自定义映像 打开终端窗口,导航至包含上述 Dockerfile 和 Spring Boot JAR 文件的工作目录,输入如下指令来构建 Docker 映像: ```bash docker build -t my-spring-boot-app . ``` 这会告诉 Docker 使用当前路径中的 Dockerfile 来构建新的映像,并将其标记为 `my-spring-boot-app`。 #### 启动容器实例 完成映像构建后,可以通过下面这条简单的 docker run 命令快速启动应用容器: ```bash docker run -p 8080:8080 --name some-springboot-d my-spring-boot-app ``` 这里 `-p` 参数用于指定主机端口与容器内部服务暴露端口之间的映射关系;`--name` 给定新创建的容器名称以便管理;最后跟的是之前建立好的映像标签。 #### 访问 Web 应用 一旦容器成功启动,默认情况下应该可以在浏览器地址栏键入 `http://localhost:8080` 或者其他配置过的 URL 地址查看正在运行的应用界面或 API 文档页面。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值