jenkins+docker实现可持续自动化部署springboot项目
本帖最后由 Shaw0xyz 于 2024-6-9 13:55 编辑1. 引言
在现代软件开发中,持续集成和持续部署(CI/CD)是提高开发效率和代码质量的重要手段。Jenkins作为一款流行的开源自动化服务器,结合Docker可以实现高效的自动化部署。本文将详细介绍如何使用Jenkins和Docker实现Spring Boot项目的持续自动化部署。
1.1 持续集成与持续部署概述
持续集成(CI)是一种软件开发实践,开发人员经常将代码集成到共享代码库中。每次集成都通过自动化构建(包括编译、测试)来验证,从而尽早发现错误。
持续部署(CD)是CI的延续,指的是代码在通过所有测试后自动部署到生产环境。这使得新功能和修复能够更快地交付给用户。
2. 环境准备
在开始实现持续自动化部署之前,需要准备以下环境和工具:
(1) JDK 1.8及以上版本
(2) Maven或Gradle构建工具
(3) Docker
(4) Jenkins
(5) Git
2.1 安装Docker
Docker是一个开源的容器化平台,能够将应用程序及其依赖打包成一个可移植的容器。安装Docker的方法如下:
在Linux系统上,可以通过以下命令安装Docker:
sudo apt-get update
sudo apt-get install -y docker-ce
在Windows和MacOS上,可以从Docker官网下载安装包并按照指引安装。
2.2 安装Jenkins
Jenkins是一个开源的自动化服务器,用于实现CI/CD。安装Jenkins的方法如下:
在Linux系统上,可以通过以下命令安装Jenkins:
wget -q -O - <a href="https://pkg.jenkins.io/debian/jenkins.io.key" target="_blank">https://pkg.jenkins.io/debian/jenkins.io.key</a> | sudo apt-key add -
sudo sh -c 'echo deb <a href="http://pkg.jenkins.io/debian-stable" target="_blank">http://pkg.jenkins.io/debian-stable</a> binary/ > /etc/apt/sources.list.d/jenkins.list'
sudo apt-get update
sudo apt-get install -y jenkins
在Windows和MacOS上,可以从Jenkins官网下载安装包并按照指引安装。
3. 配置Jenkins
安装完成后,启动Jenkins,并在浏览器中打开http://localhost:8080。按照页面提示完成初始设置,包括安装推荐的插件和创建管理员用户。
3.1 安装必要插件
为了与Docker集成,需要在Jenkins中安装Docker插件。在Jenkins主页面,依次选择“Manage Jenkins” -> “Manage Plugins” -> “Available”,然后搜索并安装“Docker”插件。
3.2 配置全局工具
在Jenkins主页面,依次选择“Manage Jenkins” -> “Global Tool Configuration”,配置JDK和Maven的安装路径。
4. 创建Jenkins任务
接下来,创建一个新的Jenkins任务来实现Spring Boot项目的自动化部署。
4.1 创建自由风格项目
在Jenkins主页面,选择“New Item”,输入任务名称并选择“Freestyle project”,然后点击“OK”。
4.2 配置源码管理
在任务配置页面,选择“Source Code Management” -> “Git”,并填写Spring Boot项目的Git仓库URL和凭据。
4.3 配置构建触发器
选择“Build Triggers”,勾选“Poll SCM”,并在Schedule中填写构建触发规则。例如,“H/5 * * * *”表示每5分钟检查一次代码库是否有变化。
4.4 配置构建步骤
选择“Build” -> “Add build step” -> “Invoke top-level Maven targets”,并在Goals中填写“clean package”,用于构建Spring Boot项目。
4.5 配置构建后操作
选择“Post-build Actions” -> “Add post-build action” -> “Deploy to container”,并配置Docker的相关信息。填写Docker主机URL、Docker镜像名称和容器端口映射等信息。
5. 编写Dockerfile
为了将Spring Boot项目容器化,需要编写一个Dockerfile,并将其放置在项目根目录下。示例如下:
FROM openjdk:8-jdk-alpine
VOLUME /tmp
COPY target/demo-0.0.1-SNAPSHOT.jar app.jar
ENTRYPOINT ["java","-jar","/app.jar"]
上述Dockerfile使用OpenJDK作为基础镜像,将Spring Boot项目的JAR文件复制到镜像中,并指定了应用的启动命令。
6. 构建和部署
在完成上述配置后,保存任务并点击“Build Now”按钮,Jenkins将开始构建Spring Boot项目并生成Docker镜像。构建完成后,Jenkins会自动将Docker镜像部署到指定的容器中。
7. 结论
通过本文的介绍,我们了解了如何使用Jenkins和Docker实现Spring Boot项目的持续自动化部署。通过CI/CD流水线,开发人员可以在每次代码提交后自动构建、测试和部署项目,从而提高开发效率和代码质量。在实际应用中,可以根据项目需求进一步优化和扩展CI/CD流程。
/ 荔枝学姐de课后专栏 /
Hi!这里是荔枝学姐~
欢迎来到我的课后专栏
自然语言学渣 NLP摆烂姐
热衷于技术写作 IT边角料
AIGC & Coding & Linux ...
~互撩~ TG: @Shaw_0xyz
页:
[1]