IDEA 一键完成:打包 + 推送 + 部署docker镜像

devtools/2025/3/19 4:27:59/

1、本方案要解决场景?

想直接通过本地 IDEA 将最新的代码部署到远程服务器上。

2、本方案适用于什么样的项目?

  1. 项目是一个 Spring Boot 的 Java 项目。
  2. 项目用 maven 进行管理。
  3. 项目的运行基于 docker 容器(即项目将被打成 docker image,并最终以容器的方式来运行)。

3、本方案对于远程服务器的要求?

该服务器是用来最终运行项目的,所以对它的要求是:已安装了 Docker,并能够正常拉取镜像。

4、配置步骤

4.1、SSH 配置

本方案是要通过本地的 IDEA 连接远程服务器进行操作的,所以我们需要先在 IDEA 中配置一个 SSH,如下图:

找到 IDEA 的「设置」
在这里插入图片描述
添加 SSH 配置
在这里插入图片描述

4.2、Docker 配置

通过此配置,我们可以连接到远程服务器上的 Docker 守护进程(即配置了一个Docker服务器,「4.4」中会用到),如下图:
请添加图片描述
【5】中下拉列表中可选的SSH配置来自「4.1」中的配置。

4.3、SpringBoot 项目

需要注意的是用于定义和构建该项目Docker镜像的 Dockerfile 要放在项目 jar 包所在目录的同级(这里提到的项目 jar 包是通过maven package 命令生成的 jar包),否则,在通过 Dockerfile 创建镜像,执行到 ADD target/jnew-whatcell-api.jar 的时候,会出现找不到 jnew-whatcell-api.jar 的情况。
在这里插入图片描述
在这里插入图片描述

4.4、运行配置

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
上图中的【绑定端口】如果页面上没有该配置,可通过下图添加上:
在这里插入图片描述
对于以上的配置操作,我们可以这样理解:指定在一台安装了 Docker 的远程服务器上,基于「构建」中配置的信息创建一个镜像,并根据「运行」中配置的信息将此镜像运行。其中,通过「执行前」中的操作,将项目打成 jar 包,该 jar 包将在「构建」中的 Dockerfile 中使用(「4.3」中的Dockerfile)。

4.5 运行

选择「运行配置」,点击「运行」,如下图:
在这里插入图片描述


http://www.ppmy.cn/devtools/168240.html

相关文章

手写Tomcat

手写Tomcat Tomcat详解划分结构详解结构代码示例reqHttpServletRequestHttpServletResponse Servlet 接口GenericServlet 抽象类HttpServlet 抽象类Util 工具包ResponseUtilSearchClassUtilWebservlet 注解 webapps.mywebLoginServletShowServlet ServletConfigMappingMyTomcat…

Django 5实用指南(十四)项目部署与性能优化【完】

Django5作为一个强大的Web框架,在开发过程中往往涉及到多个层面的部署和性能优化。部署的目标是确保应用在生产环境中稳定高效运行,而性能优化的目的是提高系统响应速度、并发处理能力和资源使用效率。本章将详细介绍Django5项目的部署流程、常用部署工具…

【css酷炫效果】纯CSS实现3D翻转卡片动画

【css酷炫效果】纯CSS实现3D翻转卡片动画 缘创作背景html结构css样式完整代码效果图 想直接拿走的老板,链接放在这里:https://download.csdn.net/download/u011561335/90490472 缘 创作随缘,不定时更新。 创作背景 刚看到csdn出活动了&am…

计算机网络TCP/IP四层模型

目录 网络接口层 协议 实际应用实例 网络层 协议 实际应用实例 传输层 协议 实际应用实例 应用层 协议 实际应用实例 数据封装与解封装过程 封装过程 解封装过程 TCP/IP模型与OSI模型的对比 网络接口层 网络接口层是TCP/IP模型的最底层,相当于OSI模…

html-to-image的使用及图片变形和无图问题修复

html-to-image的使用及图片变形和无图问题修复 最近迭代的时候因为新增了一个需求,需要前端提供素材及样式给后端,后端同步渲染,但是因为部分样式问题后端无法实现所以决定前端将页面生成图片然后传递给后端使用,本文记录一下使用…

如何启用 HTTPS 并配置免费的 SSL 证书

引言 HTTPS 已成为现代网站安全性的基础要求。通过 SSL/TLS 证书对数据进行加密,不仅可以保护用户隐私,还能提升搜索引擎排名并增强用户信任。本指南将详细介绍如何通过 Lets Encrypt(免费、自动化的证书颁发机构)为您的网站启用…

QAI AppBuilder 快速上手(7):目标检测应用实例

YOLOv8_det是YOLO 系列目标检测模型,专为高效、准确地检测图像中的物体而设计。该模型通过引入新的功能和改进点,如因式分解卷积(factorized convolutions)和批量归一化(batch normalization),在…

鸿蒙的 Stage 模型

鸿蒙的 Stage 模型 在鸿蒙 Next 开发中,Stage 模型是应用开发的核心架构之一,它为开发者提供了一种高效、灵活的方式来构建分布式应用。本文将详细介绍鸿蒙 Stage 模型的基本概念、应用配置文件的使用、UIAbility 组件的介绍以及如何通过 Stage 模型开发…