咔叽游戏

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 781|回复: 2

[ASP.NET] .NET微服务架构CI/CD自动构建Jenkins+Gitee

[复制链接]
  • TA的每日心情
    无聊
    2019-6-2 14:11
  • 签到天数: 4 天

    [LV.2]圆转纯熟

    发表于 2022-1-10 21:06:19 | 显示全部楼层 |阅读模式
    目录

      CI/CD准备工作安装Jenkins添加并配置Gitee新建工作流


    CI/CD

    它的意思是 持续集成/持续部署,这也不是新概念。那些八股文就不写了,说话的方式简单点:如果成功搭建CI/CD环境,当你需要迭代线上程序时,只需通过git提交代码就可以,其他什么都不用做。是不是很爽?这样你就拥有了快速迭代的能力,微服务大环境下,这也是必要的。

    准备工作

    1、准备一个.NET6项目:
    .NET微服务架构CI/CD自动构建Jenkins+Gitee-1.jpg

    2、准备一个gitee仓库
    3、准备一台服务器(非必要)

    安装Jenkins

    首先在docker中运行这段代码(代码来自官网):
    1. docker run \
    2.   -u root \
    3.   --rm \
    4.   -d \
    5.   -p 8080:8080 \
    6.   -p 50000:50000 \
    7.   -v jenkins-data:/var/jenkins_home \
    8.   -v /var/run/docker.sock:/var/run/docker.sock \
    9.   jenkinsci/blueocean
    复制代码
    没有提前下载镜像也没关系,因为它会自动下载。如下:
    .NET微服务架构CI/CD自动构建Jenkins+Gitee-2.jpg

    容器跑起来了,访问8080:
    .NET微服务架构CI/CD自动构建Jenkins+Gitee-3.jpg

    jenkins首次启动会进入安装向导,并且自动生成一个管理员账户,但是密码是输出到日志里的。因为我是通过docker启动的,所以要查看容器日志,语句:
    1. docker logs [容器id/name]
    复制代码
    密码在两行星号中间:
    .NET微服务架构CI/CD自动构建Jenkins+Gitee-4.jpg

    粘贴到刚才的页面点确认,进入下个页面:
    .NET微服务架构CI/CD自动构建Jenkins+Gitee-5.jpg

    页面给出了插件安装的两个选项:推荐安装、自定义安装,随意选一个即可。
    安装结束后,进入账户设置页面:
    .NET微服务架构CI/CD自动构建Jenkins+Gitee-6.jpg

    可以跳过并继续使用admin账户,也可以自定义一个,建议自定义一个好记的。
    最后设置一下地址就可以结束安装向导了:
    .NET微服务架构CI/CD自动构建Jenkins+Gitee-7.jpg


    添加并配置Gitee

    Jenkins默认不支持gitee,需要下载一个gitee插件才可以,找到插件管理搜索gitee并下载即可:
    .NET微服务架构CI/CD自动构建Jenkins+Gitee-8.jpg

    然后进入系统设置,配置gitee:
    .NET微服务架构CI/CD自动构建Jenkins+Gitee-9.jpg

    需要注意这里的证书。点击添加,选择“Gitee API token”:
    .NET微服务架构CI/CD自动构建Jenkins+Gitee-10.jpg

    这里的APIV5 token,登录gitee账户,设置→私人令牌,生成一个新的就好。
    添加好以后,选择证书并点击测试:
    .NET微服务架构CI/CD自动构建Jenkins+Gitee-11.jpg

    看到成功字样,保存退出。

    新建工作流

    接下来,新建一个“Freestyle”任务。
    在“源码管理”这一页,选择Git,输入你仓库的地址:
    .NET微服务架构CI/CD自动构建Jenkins+Gitee-12.jpg

    这里会报错很正常,因为没有配置账户密码。点击新增一个证书,种类选账户密码,然后选择它。正常情况下就像这样:
    .NET微服务架构CI/CD自动构建Jenkins+Gitee-13.jpg

    然后在下面设置分支,这一项决定jenkins拉取哪个分支的代码(如果不写就是任意分支):
    .NET微服务架构CI/CD自动构建Jenkins+Gitee-14.jpg

    然后就是构建触发器,选推送代码到gitee时触发(这个url先拷贝出来):
    .NET微服务架构CI/CD自动构建Jenkins+Gitee-15.jpg

    打勾以后,会多出很多选项,其他的都不用管,只需要在这里生成一个token就可以:
    .NET微服务架构CI/CD自动构建Jenkins+Gitee-16.jpg

    然后回到gitee仓库,找到管理→webhooks→新建,填入准备好的地址和token:
    .NET微服务架构CI/CD自动构建Jenkins+Gitee-17.jpg

    添加成功后看下测试请求的结果,正常情况下是200:
    .NET微服务架构CI/CD自动构建Jenkins+Gitee-18.jpg

    接下来测试触发器是否可以正常工作。构建前工作区是空的:
    .NET微服务架构CI/CD自动构建Jenkins+Gitee-19.jpg

    手动构建后:
    .NET微服务架构CI/CD自动构建Jenkins+Gitee-20.jpg

    现在提交修改代码到gitee,看能否自动构建。我就直接用vs自带工具提交了:
    .NET微服务架构CI/CD自动构建Jenkins+Gitee-21.jpg

    然后转到jenkins后台,可以看到多出一个构建记录:
    .NET微服务架构CI/CD自动构建Jenkins+Gitee-22.jpg

    戳进去看控制台输出:
    .NET微服务架构CI/CD自动构建Jenkins+Gitee-23.jpg

    的确是我刚才提交的修改,自动构建成功。
    下一步是拉到代码的同时,根据代码中的Dockerfile自动打包成镜像并且运行,下一篇继续。
    到此这篇关于.NET微服务架构CI/CD自动构建Jenkins+Gitee的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持咔叽论坛。

    原文地址:https://www.jb51.net/article/233722.htm
  • TA的每日心情
    开心
    2022-12-18 23:39
  • 签到天数: 40 天

    [LV.5]炉火纯青

    发表于 2022-10-17 23:55:18 | 显示全部楼层

    看了LZ的帖子,我只想说一句很好很强大! www.2nzz.com
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2023-11-10 19:07
  • 签到天数: 2 天

    [LV.1]登堂入室

    发表于 2023-9-23 20:20:09 | 显示全部楼层
    很好很强大
    回复 支持 反对

    使用道具 举报

    QQ|免责声明|小黑屋|手机版|Archiver|咔叽游戏

    GMT+8, 2024-3-29 05:07

    Powered by Discuz! X3.4

    © 2001-2023 Discuz! Team.

    快速回复 返回顶部 返回列表