新建项目拷贝html报错,windows+jenkins+iis 部署

本文介绍如何使用Jenkins实现从代码仓库自动拉取更新、编译.NET Core项目、发布到IIS的一整套自动化部署流程,并解决GitLab webhook配置过程中可能出现的问题。

AI 驱动代码审查实战

Claude code-review 插件深度解析,把 AI 智能审查接进 CI/CD 流水线

1.安装jenkins

2.需要配置java环境

3.初始化jenkins配置目录 注:为什么要修改工作目录 因为默认工作目录在C盘 后续配置项目编译,发布可能会有权限问题

1.打开jenkins安装目录

2.新建文件夹 work

727ddff01ea5cd84558f47367f0c415e.png

3.打开jenkins.xml 配置文件

4.将%LocalAppData%替换成你的 work文件夹目录

5.重启jenkins服务

6.http://localhost:8080 重新访问这个地址 这时候jenkins 会重新初始化工作目录

4.jenkins 插件安装

1.先安装推荐插件

2.Gitlab Hook、Build Authorization Token Root、Publish Over SSH、Gitlab Authentication、Gitlab、Git Parameter

3.添加完插件重启jenkins

5.新建项目

项目名称命名

2d73e2402be1f46739e979f350550c74.png

参数配置

ff9ae5d0b87e32002bcbb5b08055b2fe.png

git源代码管理配置

36a3875890abc46ae45f85d677fc01c5.png

jenkins 是git账户 需要拥有维护者级别的项目权限

下面是代码发布部署脚本配置

590bc93d8cb1f700154760ecb618446e.png

87b39471e6750f7e6aabcd4b2d3932ac.png

echo "进入目录"

cd srcBenchint.PublicHealth.Manager.HttpApi.Host

echo "还原项目包"

dotnet restore

echo "编译代码"

dotnet build -c "%COMPILE_MODE%"

echo "停止IIS站点"

C:WindowsSystem32inetsrvappcmd.exe stop site "Benchint.PublicHealth.Manager.HttpApi.Host.Feature"

C:WindowsSystem32inetsrvappcmd.exe stop appPool /appPool.name:"Benchint.PublicHealth.Manager.HttpApi.Host.Feature"

echo "发布项目"

dotnet publish -c "%COMPILE_MODE%" -o "E:FeatureBenchint.PublicHealth.Manager.HttpApi.Hostservice"

echo "新建版本号"

md "E:FeatureBenchint.PublicHealth.Manager.HttpApi.Host\%MAJOR_NO%.%BUILD_NO%.%BUILD_ID%"

echo "拷贝项目到当前版本"

xcopy E:FeatureBenchint.PublicHealth.Manager.HttpApi.Hostservice E:FeatureBenchint.PublicHealth.Manager.HttpApi.Host\%MAJOR_NO%.%BUILD_NO%.%BUILD_ID% /s/e/y

echo "拷贝配置文件"

xcopy E:FeatureBenchint.PublicHealth.Manager.HttpApi.Hostconfig E:FeatureBenchint.PublicHealth.Manager.HttpApi.Host\%MAJOR_NO%.%BUILD_NO%.%BUILD_ID% /s/e/y

echo "删除站点"

C:WindowsSystem32inetsrvappcmd.exe delete site "Benchint.PublicHealth.Manager.HttpApi.Host.Feature"

C:WindowsSystem32inetsrvappcmd.exe delete apppool "Benchint.PublicHealth.Manager.HttpApi.Host.Feature"

echo "新建站点"

C:WindowsSystem32inetsrvappcmd.exe add site /name:"Benchint.PublicHealth.Manager.HttpApi.Host.Feature" /bindings:http://10.3.1.245:5038 /physicalpath:"E:FeatureBenchint.PublicHealth.Manager.HttpApi.Host\%MAJOR_NO%.%BUILD_NO%.%BUILD_ID%"

C:WindowsSystem32inetsrvappcmd.exe add AppPool /name:"Benchint.PublicHealth.Manager.HttpApi.Host.Feature"

C:WindowsSystem32inetsrvappcmd.exe Set app "Benchint.PublicHealth.Manager.HttpApi.Host.Feature/" /applicationpool:"Benchint.PublicHealth.Manager.HttpApi.Host.Feature"

C:WindowsSystem32inetsrvappcmd.exe set apppool /apppool.name:Benchint.PublicHealth.Manager.HttpApi.Host.Feature /managedRuntimeVersion:""

echo "启动项目"

C:WindowsSystem32inetsrvappcmd.exe start site "Benchint.PublicHealth.Manager.HttpApi.Host.Feature"

C:WindowsSystem32inetsrvappcmd.exe start appPool /appPool.name:"Benchint.PublicHealth.Manager.HttpApi.Host.Feature"

C:WindowsSystem32inetsrvappcmd.exe recycle appPool /appPool.name:"Benchint.PublicHealth.Manager.HttpApi.Host.Feature"

编译如果提示nuget 不存在则在工作目录新建 nuget.config文件

2d406343f2845f72cf7145d909a6fc8b.png

配置gitlab push代码自动发布

#首先,你得有一个代码仓库,赶紧到gitlab上创建一个,然后创建个分支并创建一个文件。

ec7e800114add3a5778d04fb05f6afa4.png

8912c860e51f13e866c731b3bf2267af.png

e2f7d6d600f34084462bc3d764074461.png

4b3d46520dd222bc1501926068d493fc.png

#配置gitlab,当有代码提交时,触发jenkins的部署操作

d983b6f9d5b6fd48af1d05ff7ee17d7e.png

60435c3088c12cfcf92eab7dc2d86b93.png

进行GitLab + Jenkins 自动化部署时,在GitLab的 MyProject => Settings => Integrations中输入完 "URL" 和 “Secret Token”,点击按钮 “Add webhook”时,报错如下:

11d471595b0b7fe40e2c5a3d12cadc13.png

这时候需要对gitlab 设置白名单

进入 Admin area => Settings 直接就能看到如下

d7a838cf85f96ab27ce74a3a6f656904.png

f5709fa06141197b234e41aac630f8c4.png

添加对应jenkisn服务的IP

提交代码测试

7d9e38d555f5a70136424fcf07860150.png

AI 驱动代码审查实战

Claude code-review 插件深度解析,把 AI 智能审查接进 CI/CD 流水线

下载代码方式:https://pan.quark.cn/s/a4b39357ea24 HTML大屏展示模板是一种用于设计具有视觉冲击力且内容充实的巨型显示屏应用的设计方案,其应用范围广泛,涵盖了数据分析、监控以及决策支持等多个领域。这些模板通常整合了HTML、CSS、JavaScript等多种技术,尤其借助ECharts等数据可视化工具以达成复杂数据的图形化呈现。以下是对相关技术细节的深入说明: 1. **可视化**:数据可视化是将抽象的数据转化为直观的图像或图表的技术手段。这种技术有助于迅速识别数据中的模式、发展趋势和异常情况,使得非专业背景的人员也能轻松理解复杂的数据信息。在大屏展示场景中,可视化通常包含折线图、柱状图、饼图、热力图、地图等多种图表形式。 2. **大数据**:大数据指的是规模庞大、增长迅速、种类多样且数据密度较低的数据集合。在HTML大屏展示中,大数据的应用旨在支持实时或近乎实时的决策制定,例如监控销售业绩、交通流量、能源消耗等关键性能指标。 3. **HTML**:超文本标记语言(HTML)构成了网页内容的基础结构,用于界定页面的布局和元素。在大屏展示模板中,HTML负责构建页面组件,例如标题、段落、图像以及图表容器等。 4. **CSS**:层叠样式表(CSS)用于调控网页的视觉风格和布局结构。在大屏模板设计中,CSS扮演着核心角色,确保设计的响应性、适应性和美观度,包括设定颜色、字体、间距、动画效果等。 5. **ECharts**:ECharts是由百度研发的一款开源JavaScript数据可视化库,能够支持多种图表类型,如折线图、柱状图、散点图等,并提供了丰富的交互特性。在大屏展示中,ECharts能够助力生成动态且交互式的数据...
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值