Jenkins 完整搭建 + .NET8 全自动发布

一、Jenkins 详细安装与初始化步骤

1. 下载 Jenkins

  1. 打开官网:https://www.jenkins.io/download/
  2. 选择 Windows 版本,下载 .msi 安装包

2. 安装 Jenkins

  1. 双击安装包 → 一路 Next
  2. 安装类型选择:Run as Windows Service(Windows 服务)
  3. 端口默认:8080
  4. 选择账户:Run service as localSystem
  5. 等待安装完成 → 自动跳转到:http://localhost:8080

3. Jenkins 初始化配置

  1. 打开密码文件:

plaintext

复制代码
C:\Program Files\Jenkins\secrets\initialAdminPassword
  1. 复制密码 → 粘贴到网页解锁
  2. 选择:Install suggested plugins(安装推荐插件)
  3. 等待插件安装完成
  4. 创建管理员账户(账号 / 密码自行设置)
  5. 完成初始化,进入 Jenkins 首页

4. Jenkins 全局配置(必须)

  1. 进入:系统管理 → 全局工具配置
  2. 找到 Git
  3. Path to Git executable 填写:

plaintext

复制代码
D:/Program Files/Git/cmd/git.exe
  1. 点击 保存

5. 必备插件检查

  1. 进入:系统管理 → 插件管理
  2. 已安装列表确认:
  • Git Plugin
  • Credentials Binding Plugin没有就搜索安装,然后重启 Jenkins

二、Jenkins 发布 .NET8 项目完整配置步骤

1. 新建发布任务

  1. 首页 → 新建 Item
  2. 任务名称:test01
  3. 选择:自由风格软件项目
  4. 确定

2. 配置 Git 代码拉取

  1. 源码管理 → 勾选 Git
  2. Repository URL

plaintext

复制代码
http://134.175.126.254:3000/admini/gitee-rj-test.com.git
  1. Credentials → 添加 Gitee 账号密码
  2. Branch Specifier*/main

3. 构建触发器(可选)

  • 暂时不配置,使用手动构建

4. 构建环境(默认即可)

无需修改

5. 构建步骤(核心发布脚本)

  1. 增加构建步骤 → 执行 Windows 批处理命令
  2. 粘贴以下最终脚本:

batch

复制代码
@echo off
chcp 65000 >nul

cd /d "C:\ProgramData\Jenkins\.jenkins\workspace\test01\WebApplication11"

dotnet restore
dotnet build --configuration Debug

taskkill /f /im WebApplication11.exe >nul 2>&1

PsExec64.exe -i 1 -d -accepteula "C:\ProgramData\Jenkins\.jenkins\workspace\test01\WebApplication11\bin\Debug\net8.0\WebApplication11.exe"

timeout /t 1 /nobreak >nul
exit /b 0

6. 保存任务配置


三、一键发布测试步骤

  1. 进入任务 test01
  2. 点击 立即构建
  3. 查看控制台输出
  4. 构建状态显示:SUCCESS(绿色)
  5. 浏览器访问:

plaintext

复制代码
http://localhost:5253/weatherforecast

四、全自动发布流程说明

  1. Jenkins 自动从 Gitee 拉取最新代码
  2. 自动还原 NuGet 依赖
  3. 自动编译 .NET8 项目
  4. 自动杀死旧程序进程
  5. 自动启动新程序
  6. Jenkins 不卡住、构建成功
  7. 网站正常运行、端口可访问
相关推荐
孫治AllenSun8 分钟前
【Nginx】配置参数和使用案例
运维·nginx
啵啵鱼爱吃小猫咪1 小时前
Ubuntu 20.04 + ROS Noetic 源码安装 libfranka 0.8.0 和 franka_ros 0.8.0 完整教程
linux·运维·ubuntu
Piko6142 小时前
锐捷 VSU 虚拟化堆叠配置
运维·网络·笔记
ljs6482739512 小时前
Linux运维实操:vi编辑器永久配置静态IP(CentOS系列)
linux·运维·编辑器
2301_780303902 小时前
网络安全、自动化运维、ERP、CRM、MES
运维·web安全·网络安全·自动化·安全威胁分析
AOwhisky3 小时前
Python 学习笔记(第三期)——流程控制:条件判断与循环结构
运维·笔记·python·学习·云原生·流程控制·循环
IpdataCloud3 小时前
AI生成的Avalon恶意框架怎么防?用IP离线库识别模块化C2通信
运维·人工智能·网络协议·tcp/ip·ip
极客先躯3 小时前
高级java每日一道面试题-2026年03月30日-实战篇[Docker]-如何监控容器的网络流量?
java·运维·docker·容器·prometheus·高级面试
Waay4 小时前
Linux 三个核心环境变量配置文件、作用域、生效方式完整梳理
linux·运维·学习·云原生·容器
Piko6144 小时前
锐捷交换机 DHCP Server部署
运维·网络·笔记