用 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 = [RequestMethod.GET]) fun hello(): String { return "<h1>Hello, Docker!</h1>" } }
这里用的 Kotlin 语言,用Java 的话,注解是一样的。
只用下载 jre 就行,只有 57MB。
docker pull openjdk:8u212-jre-alpine
FROM openjdk:8u212-jre-alpine WORKDIR /home/dev COPY ./target/*.jar /home/dev/app.jar CMD ["java", "-jar", "app.jar"]
注意这里运行 jar 没有使用 & 符号,因为在 Docker 容器中运行的程序必须是前台的,如果用后台方式运行,命令执行完容器就直接停止了。
在终端中把工作目录切换到项目目录,执行:
docker build -t <镜像名称> .
最后的 . 不能掉,它指定了上下文目录为当前目录。
docker run --name <容器名称> -d -p 8080:8080 <上一步构建的镜像名称>
运行后,可以使用 docker ps 命令查看是否成功运行。
访问 localhost:8080 访问接口:
Linux公社的RSS地址 : https://www.linuxidc.com/rssFeed.aspx
本文永久更新链接地址: https://www.linuxidc.com/Linux/2019-08/160012.htm