Linux下怎么使用Jenkins自动化构建.NET Core应用


本篇内容主要讲解“Linux下怎么使用Jenkins自动化构建.NETCore应用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Linux下怎么使用Jenkins自动化构建.NETCore应用”吧!请提前在 Linux 上安装 Docker,在 Linux 中,我们使用 Docker 启动 Jenkins,这样可以避免手动安装大量依赖以及污染本地环境,也便于快速启动和故障恢复。安装 Docker 完毕后,使用 docker version 检查 Docker 版本,Docker 版本不能为 1.x、3.x 这种版本,请升级到 18.x 以上版本。一般在 Ubuntu 系统中,下载安装的是最新版本,但是在 Centos 中因为默认镜像源中的版本比较旧, 安装 Doker 版本较低,需要手动添加新版本的镜像源再升级。请参考:https://www.byun.com/article/243104.htm因为会使用到容器提供环境,以及使用 Docker 打包 .NET Core 程序为 Docker 镜像,所以需要在 Jenkins 容器中映射 Docker 的 .sock 文件,以便在容器中,还能使用 Docker 命令。在宿主机中创建 /var/jenkins_home 目录,用于备份 Jenkins 中的数据。在 Linux 中使用 Docker 启动 Jenkins ,其命令如下:启动后,使用 docker logs {容器ID} 查看日志获取 Jenkins 登录密码,其密码是一串哈希字符串,例如:1abc12445adcf。最后打开 8080 端口,即可访问 Jenkins。登录 Jenkins 后,会提示安装推荐的插件,请根据提示安装推荐的插件,推荐安装的插件列表如下:另外为了提供容器打包支持等,需要另外手工安装以下插件。这里介绍一下我们后面要用到的两个镜像。拉取一个 .NET Core SDK,每次启动流水线时,都会启动一个 .NET Core SDK 容器,为我们提供构编译、发布 .NET Core 程序的环境。拉取一个 ASP.NET Core Runtime,用于制作应用镜像的基础镜像。镜像列表:笔者贴心地给各位同学准备了 Demo 项目,请到 https://github.com/whuanle/DotNetCoreJenkinsDemo 仓库,fork 到你的仓库,后续我们使用这个 ASP.NET Core 的 Demo 程序实践流程。在项目文件中,可以找到一个 Jenkinsfile 文件,此文件为我们定义流水线的步骤。我们看一下简单的 Jenkinsfile 模板免费云主机域名stages 中,定义流水线的阶段,在模板中,一个定义了三个阶段,分别是 BuildTestDeploy。每个阶段都可以定义多个步骤(steps),每个步骤中都可以执行多个不同类型的 step。demo 中的 Jenkinsfile 比较简单,我们可以找个 Publish 阶段的内容看一下:其实很简单,每个步骤执行 shell 命令就行,我们可以使用 sh '...' 表示此步骤要执行的 shell 命令。接着我们看一下 Jenkinsfile 开头的两部分内容。environment 中,可以定义此次构建过程的环境变量。agent 则是节点选择器,可以选择在何种环境下启动流水线,有 nodedocker 等类型。登录到 Jenkins 网页后台,在左侧菜单栏中点击New Item,开始创建流水线。Jenkins 有多种流水线风格,还可以通过添加插件,来加入更多的流水线类型,我们主要了解 Freestyle project 、Pipeline、Multibranch Pipeline 即可。Freestyle projectFreestyle project流水线 使用上比较自由,不需要对项目做更改即可创建流水线,可以添加很多选择、配置。如果流程需要变化,改动比较麻烦。Pineline、Multibranch Pipeline他们都可以同时处理多个分支,这两种都是依赖于项目中的 Jenkinsfile 文件。Multibranch Pipeline 好处是可以同时检查多个分支,为每个分支创建构建Job,而 Pipeline 会把多个分支放到一个 Job 中。点击New Item,创建流水线,选择 Mutibranch Pipline。添加 Git 源代码 仓库方式,我们可以自由选择一种类型,建议使用Single repository & branch。由于我们没有添加密钥,所以 Jenkins 无法访问你的 Github 仓库,所以需要添加一个可访问的密钥。找一台已经安装了 git 的电脑,生成公钥私钥,为 Jenkins 和 GitHub 之间提供加密连接。执行命令:根据提示,填写要存放密钥的路径,如D:/id_rsa。执行命令后,会生成两个文件,id_rsaid_rsa.pub,复制 id_rsa (私钥)中的内容到 Jenkins 中。然后把id_rsa.pub(公钥)的内容添加到 Github 你的账号中。你可以使用多种方式添加认证方式,最简单、安全的是密钥,我们可以选择Secret file,然后上传私钥,或者使用别的方式,这里就不赘述了。然后选择要发布的分支,最后直接保存即可。然后回到主界面,打开 我们创建的流水线,点击 Build Now,即可启动流水线。构建成功截图:在 Linux 服务器上,查看镜像列表:可以看到,已经自动打包应用为镜像,其镜像名称和版本号,都可以在 Jenkinsfile 中设置。我们可以在构建界面中,观察每个步骤的日志。
在 Open Blue Ocean 中,有更加好看的 UI 和方便的工具。可视化设计流水线步骤。观察构建过程。到此,相信大家对“Linux下怎么使用Jenkins自动化构建.NETCore应用”有了更深的了解,不妨来实际操作一番吧!这里是百云主机网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

相关推荐: MySQL约束之默认约束default与零填充约束zerofill怎么实现

本篇内容主要讲解“MySQL约束之默认约束default与零填充约束zerofill怎么实现”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MySQL约束之默认约束default与零填充约束zerofill怎么实现”…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

Like (0)
Donate 微信扫一扫 微信扫一扫
Previous 04/07 11:12
Next 04/07 11:12

相关推荐