zoukankan      html  css  js  c++  java
  • Jenkins 部署 .NET MVC 项目

    一、什么是Jenkins

      Jenkins是一款开源 CI&CD 软件,用于自动化各种任务,包括构建、测试和部署软件。Jenkins 支持各种运行方式,可通过系统包、Docker 或者通过一个独立的 Java 程序。

    二、如何安装Jenkins

      1、安装JDK:https://www.oracle.com/java/technologies/javase-downloads.html

      2、安装Jenkins:https://www.jenkins.io/download/

      3、进行相关配置

        ①、登入http://localhost:8080,进入Jenkins初始化页面,第一次启动时间可能有点长,耐心等待。进入成功后会看到如下画面,按提示路径打开密码文件

      输入密码

        

        ②、根据提示安装插件、设置用户成功后即进入Jenkins主界面

        

    三、部署流程

      很多人知道Jenkins并不知道怎样通过Jenkins部署MVC的流程,这里我简单说明一下:

        1、常规网站发布流程

        ①、项目在本地打包并放入指定文件夹 => 、把打包文件剪切或者复制到服务器上(操作繁琐)

          

        2、使用Jenkins的流程

        ①、把MVC项目源文件推送到GIthub或者Azure DevOps上等  => 、使用Jenkins用Git plugin插件下载Git项目,然后在使用MSBuild自动部署(程序员只需要推送Git就能自动发布到服务器)

    四、Jenkins实现本地部署

      1、实现本地打包需要使用MSBuild插件,我们先安装此插件

      

       2、配置MSBuild版本

      【系统管理】=>【Global Tool Configuration】=>【MSBuild】,点击【新增MSBuild】进行版本的添加

       

       注意:其中Path to MSBuild为文件夹路径,代码要编译的那台机器的文件夹,点击【Save】完成保存。

      3、新建任务进行测试

      这里假设在要进行构建的机器上已经新建好【MVC】项目,并放在“D:Yespace”

        ①、新建任务

        

         ②、在【构建】节点增加【增加构建步骤】,选择【Build a Visual Studio project or solution using MSBuild】,如下

        

        注意:这里建议全部项目都编译csproj文件,不建议sln,sln不精确到底哪个项目有用,输出的目录在命令行上输入。注意命令行不能换行,且最后一个分号不用写!

        /p:OutputPath=D:Test;Configuration=Release;VisualStudioVersion=16.0  

        OutputPath 是编译输出的dll路径、/p:Configuration=Release 表示编译Release版本、VisualStudioVersion 表示版本

        ③、【构建】保存后测试一下效果

        

        

        成功发布!

        

        

        注意:如果编译的是Web项目,那么最后编译的工程为“D:Test”,中间多了_PublishedWebsites文件夹,里面就是发布的具体包。

     五、使用Jenkins通过Git获取项目,再用MSBuild实现部署

      1、安装Git plugin插件

      2、新建一个任务"Yespace",然后进行配置,【General】

      

       注意:这个目录是Jenkins通过Git下载的【MVC】项目的存储目录,如果不设置会默认下载到主目录“C:Windowssystem32configsystemprofileAppDataLocalJenkins.jenkins”

      3、【源码管理】

       

       添加Git的用户和密码

      4、【构建】保存后测试一下效果

      

       

       成功发布!

      

      后续会陆续更新其他资料,喜欢请关注哦!

      我的博客:https://www.cnblogs.com/duhaoran/

     
     
  • 相关阅读:
    linux UID,GID,EUID,EGID,SUID,SGID
    Hard模式题目
    【Todo】Java TreeSet学习 & ceiling,floor
    被信号打断的系统调用
    拟牛顿法——变种及其相互关系
    域名注册查询接口(API)的说明
    HDU 2825 Wireless Password(AC自动机+状压DP)
    串的模式匹配
    Android DES加密的CBC模式加密解密和ECB模式加密解密
    [Web Chart系列之五] 6. 实战draw2d之ConnectionRouter
  • 原文地址:https://www.cnblogs.com/duhaoran/p/13999681.html
Copyright © 2011-2022 走看看