Code前端首页关于Code前端联系我们

在 Docker 中运行 SpringBoot 应用

terry 2年前 (2023-09-25) 阅读数 49 #后端开发

创建 SpringBoot 项目

使用 Idea 创建 SpringBoot 项目并编写接口:

package cloud.dockerdemo

import org.springframework.web.bind.annotation.RequestMapping
import org.springframework.web.bind.annotation.RequestMethod
import org.springframework.web.bind.annotation.RestController

@RestController
class HelloDocker {

    @RequestMapping(value = ["/"], method = [])
    fun hello(): String {
        return "<h1>Hello, Docker!</h1>"
    }
}

这里使用的是 Kotlin 语言。如果您使用Java,注释是相同的。

下载OpenJDK镜像

只需下载jre,它只有57 MB。

docker pull openjdk:8u212-jre-alpine

在项目根文件夹中创建 Dockerfile

FROM openjdk:8u212-jre-alpine

WORKDIR /home/dev

COPY ./target/*.jar /home/dev/

CMD ["java", "-jar", ""]
  • target。该目录是maven打包输出jar的目录,并将打包的jar文件复制到容器中。
  • CMD是容器启动时执行的命令,即java -jar

注意,这里运行jar时不使用&符号,因为Docker容器中运行的程序必须在前台。如果在后台运行,则执行命令后容器将立即停止。

构建镜像

在终端中将工作目录切换到项目目录,运行:

docker build -t <镜像名称> .

最后一个不能删除,它指定上下文目录为当前目录。

运行容器

docker run --name <容器名称> -d -p 8080:8080 <上一步构建的镜像名称>

运行后可以使用docker ps命令检查是否运行成功。

访问localhost:8080访问接口:

Docker 中运行 SpringBoot 应用

版权声明

本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

热门