当前位置: 代码迷 >> 综合 >> idea springboot 一键部署(Dockerfile 篇)
  详细解决方案

idea springboot 一键部署(Dockerfile 篇)

热度:41   发布时间:2023-12-11 22:25:44.0

最近换了新的工作电脑,需要重新搭环境。之前 IDEA 一直没敢升级,趁此机会,就升级试试吧。

 升级到 2021.1 版

然后装插件的时候,发现默认安装了好多插件,其中有一个就是 docker

docker 相关的介绍我就不在这赘述了, 我这边准备了一台开放了 docker 远程 api 端口 (默认是 2375)的测试机。

 开启我们的一键部署之旅吧!

1 创建一个 SpringBoot 项目

简单新建一个 Controller,返回 hello + 输入字符串

@RestController
public class DockerController {@GetMapping("/say")public String say(String msg) {return "hello " + msg;}}

端口号设置为 8090

application.yml

server:port: 8090

2 创建 Dockerfile 文件

# 基础镜像
FROM openjdk:8-alpine
# 添加到工作目录
ADD target/docker.jar /app/app.jar
# 对外暴露 8090 端口
EXPOSE 8090
# 设置工作目录
WORKDIR /app
# 设置启动命令
CMD ["/bin/sh", "-c", "java -server -Duser.timezone=GMT+08 -cp app.jar org.springframework.boot.loader.JarLauncher"]

3 远程连接 docker

File - Settings - Build,Execution,Deployment - Docker

走 TCP socket

 保存完成,可以在 services(Alt + 8) 里看到镜像和容器了

 

4 配置一键部署

        这边采用的 Dockerfile 方式

 在 before launch 会先 clean 再 package,相当于执行 mvn clean package ,这样就能保证每次打出来的 jar 包都是最新的。

5 部署验证

        可以看到相应的镜像和服务启动日志 

服务也正常访问       

 http://xxxx:8090/say?msg=world

 

  相关解决方案