idea springboot 一键部署(Dockerfile 篇)

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

idea springboot 一键部署(Dockerfile 篇)_第1张图片

 升级到 2021.1 版

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

idea springboot 一键部署(Dockerfile 篇)_第2张图片

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

idea springboot 一键部署(Dockerfile 篇)_第3张图片

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

idea springboot 一键部署(Dockerfile 篇)_第4张图片

 

4 配置一键部署

        这边采用的 Dockerfile 方式

idea springboot 一键部署(Dockerfile 篇)_第5张图片

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

5 部署验证

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

idea springboot 一键部署(Dockerfile 篇)_第6张图片

服务也正常访问       

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

 

你可能感兴趣的:(java,docker,idea)