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

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值