【demo演示】IIS一键发布mvc项目(netcore)
前提:由于是演示iis所以得部署好agent
参考:https://github.com/yuzd/AntDeployAgent/issues/1 注意:Windows 服务器上 需要安装一个agent 就是 安装一个windows服务,用来处理iis的发布和windows服务的发布,可以点击上面的参考链接进行安装。 注意:Windows 服务器上 需要安装一个agent 就是 安装一个windows服务,用来处理iis的发布和windows服务的发布,可以点击上面的参考链接进行安装。
注意: 得用管理员权限部署agent 防止会出现部署到iis上权限不足问题 注意: 由于是netcore项目 想要在iis上部署得先在机器上安装 dotnet-hosting 请查看 微软官方文档: https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/iis 如果不想装dotnet-hosting 可以参考https://github.com/yuzd/AntDeployAgent/issues/5 部署到windows服务上。
1.新建一个netcore的mvc项目


2.在工程上点击右键然后选择 AntDeploy 发布

3配置AntDeploy
3.1添加一个环境 名字叫 测试

3.2在 测试环境里面添加 windows服务器 这里我做测试就添加就是我本机,注意Host里面是填写格式为:ip:端口号
注意:Token不是windows服务器的密码!!!是安装agent后,agent的配置文件里面配置的Token(你自己自定义配置的)
注意:Port不是你要发布的项目的端口号!!!是安装agent后,agent的配置文件里面配置的端口号(你自己自定义配置的)
点击【Connect Test】按钮进行确认agent可以成功链接,否则会发布失败
如果【Connect Fail】失败 请查看 https://github.com/yuzd/AntDeployAgent/issues/10
3.3进入 IIS_Web Tab界面
选择 sdk 为 netcore
环境 选择 我们刚刚创建的 测试
如下图所示

点击 【Deploy】按钮进行发布
如下图所示:

确认服务器无误 点击 【是】开始执行一键部署
如果发布出现错误会出现下图所示:

可以在Log里面查看失败原因是因为我部署agent没有用管路员权限 报权限不足失败

发布成功如下图:

新创建site的时候对应的应用程序池也是每个site唯一的。
注意 netcore应用程序池配置是有区别的如下图所示:

这里演示的是IIS上没有这个site 所以自动创建了。 如果site已存在的情况 Deploy 就会全量覆盖 不会重新创建site的。 如果想要覆盖时排除指定文件 可以在 Setting Tab界面的IgnoreList里面增加(支持正则)
若部署成功访问不了
iis上部署netcore项目和传统的framework项目是不一样的,请按照微软官方网站的指导排查: https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/iis