IDEA 集成 Docker 插件一键部署 Spring Boot 应用
作者:mmseoamin日期:2023-12-13

🚀 作者主页: 有来技术

🔥 开源项目: youlai-mall 🍃 vue3-element-admin 🍃 youlai-boot

🌺 仓库主页: Gitee 💫 Github 💫 GitCode

💖 欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请纠正!

目录

  • 前言
  • IDEA 安装 Docker 插件
  • 配置 Docker 远程服务器
  • 编写 DockerFile
  • SpringBoot 部署配置
  • SpringBoot 项目部署
  • 结语
  • 开源项目

    前言

    随着容器化技术的崛起,Docker成为了现代软件开发的关键工具。在Java开发中,Spring Boot是一款备受青睐的框架,然而,将其快速部署到Docker容器中一直是个挑战。本文将介绍一种简便的方法,通过IDEA集成Docker插件,实现Spring Boot应用的一键部署,为开发者提供更便捷的开发和部署体验。

    本文项目源码:youlai-boot

    IDEA 安装 Docker 插件

    IDEA菜单栏File → Settings → Plugins 插件市场搜索 Docker 安装并重启IDEA

    IDEA 集成 Docker 插件一键部署 Spring Boot 应用,在这里插入图片描述,第1张

    配置 Docker 远程服务器

    IDEA菜单栏File → Settings → Build,Execution,Deployment → Docker 配置远程服务器的连接信息

    IDEA 集成 Docker 插件一键部署 Spring Boot 应用,第2张

    第4步添加远程服务器通过 SSH 方式连接,只要输入目标服务器主机名、用户名和密码,测试连接成功即可。

    IDEA 集成 Docker 插件一键部署 Spring Boot 应用,第3张

    编写 DockerFile

    在项目根目录下创建一个名为 Dockerfile 的文件,以构建 Docker 镜像

    以 youlai-boot 项目为例,以下是一个针对 Spring Boot 单体应用的配置示例:

    # 基础镜像
    FROM openjdk:17-jdk-alpine
    # 维护者信息
    MAINTAINER youlai 
    # 设置国内镜像源(中国科技大学镜像源),修改容器时区(alpine镜像需安装tzdata来设置时区),安装字体库(验证码)
    RUN echo -e https://mirrors.ustc.edu.cn/alpine/v3.7/main/ > /etc/apk/repositories  \
        && apk --no-cache add tzdata && cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo "Asia/Shanghai" > /etc/timezone \
        && apk --no-cache add ttf-dejavu fontconfig 
    # 在运行时自动挂载 /tmp 目录为匿名卷,提高可移植性
    VOLUME /tmp
    # 将构建的 Spring Boot 可执行 JAR 复制到容器中,重命名为 app.jar
    ADD target/youlai-boot.jar app.jar
    # 指定容器启动时执行的命令
    CMD java \
        -Djava.security.egd=file:/dev/./urandom \
        -jar /app.jar
    # 暴露容器的端口
    EXPOSE 8989
    

    IDEA 集成 Docker 插件一键部署 Spring Boot 应用,在这里插入图片描述,第4张

    SpringBoot 部署配置

    IDEA 顶部打开 Edit Configurations 打开 Run/Debug Configurations 界面

    IDEA 集成 Docker 插件一键部署 Spring Boot 应用,在这里插入图片描述,第5张

    选择 Dockerfile

    IDEA 集成 Docker 插件一键部署 Spring Boot 应用,第6张

    项目部署配置

    IDEA 集成 Docker 插件一键部署 Spring Boot 应用,image-20231118003354547,第7张

    SpringBoot 项目部署

    部署配置完成之后,选择配置点击启动将会自动完成: 项目编译 + 打包 + 制作Docker 镜像 + 推送镜像至远程服务器 + 启动容器应用

    IDEA 集成 Docker 插件一键部署 Spring Boot 应用,在这里插入图片描述,第8张

    启动成功

    IDEA 集成 Docker 插件一键部署 Spring Boot 应用,image-20231118011231744,第9张

    访问 http://ip:port/doc.html 接口文档测试部署是否成功。

    IDEA 集成 Docker 插件一键部署 Spring Boot 应用,image-20231118011519269,第10张

    结语

    容器化技术的普及为开发者提供了更高效、一致的部署方式。通过本文介绍的方法,我们期望能帮助开发者更轻松地在IDEA中实现Spring Boot应用的Docker化部署,为现代软件开发提供更便捷的解决方案。

    开源项目

    • SpringCloud + Vue3 微服务商城
      GithubGitee
      后端youlai-mall 🍃youlai-mall 🍃
      前端mall-admin🌺mall-admin 🌺
      移动端mall-app 🍌mall-app 🍌
      • SpringBoot 3+ Vue3 单体权限管理系统
        GithubGitee
        后端youlai-boot 🍃youlai-boot 🍃
        前端vue3-element-admin 🌺vue3-element-admin 🌺