学而实习之 不亦乐乎

使用 Docker 部署 SpringBoot 项目

2024-01-15 22:35:21

Docker是 一个开源的容器化平台,可以将应用程序及其依赖项打包成一个独立的容器。它提供了一种轻量级、可移植和可扩展的方式来部署应用程序。本文将介绍如何使用 Docker 部署 SpringBoot 应用程序。

一、 编写Dockerfile

Dockerfile 是用于构建 Docker 镜像的脚本,它定义了镜像的构建过程和依赖项。以下是一个简单的 Dockerfile 示例:

# 指定基础镜像,例如OpenJDK
FROM openjdk:8-jdk-alpine

# 设置工作目录
WORKDIR /app

# 复制项目的jar包到容器中
COPY target/myproject.jar /app

# 暴露应用程序的端口
EXPOSE 8080

# 运行应用程序
ENTRYPOINT ["java", "-jar", "myproject.jar"]

上述Dockerfile的代码解释如下:

  • FROM: 指定基础镜像,这里使用了OpenJDK 8。
  • WORKDIR: 设置工作目录为/app。
  • COPY: 将项目的jar包复制到容器的/app目录下。
  • EXPOSE: 暴露应用程序的端口,这里使用了Spring Boot默认的端口8080。
  • ENTRYPOINT: 定义容器启动时需要执行的命令,这里是运行Spring Boot应用程序。

二、构建Docker镜像

在编写完Dockerfile之后,接下来就是构建 Docker 镜像。打开终端,进入项目的根目录,执行以下命令:

# docker build -t myproject .

上述命令的解释如下:

  • docker build: 构建镜像的命令。
  • -t: 指定镜像的名称,这里将镜像命名为myproject。
  • .: 指定Dockerfile所在的目录为当前目录。

三、运行 Docker 容器

构建完Docker镜像后,接下来就可以运行容器了。执行以下命令:

# docker run -p 8080:8080 myproject

上述命令的解释如下:

  • docker run: 运行容器的命令。
  • -p: 指定容器的端口映射,将主机的8080端口映射到容器的8080端口。
  • myproject: 指定要运行的镜像。

现在,你的Spring Boot应用程序已经成功部署到Docker容器中了。在浏览器中访问 http://localhost:8080,即可查看应用程序运行的页面。