zoukankan      html  css  js  c++  java
  • rancher+gitlab+appveyor 实现 CI/CD 流水线(汇总)

    rancher+gitlab+appveyor 实现 CI/CD 流水线

    • 本文主要是做一些汇总,将近期接触并弄好的一些工具整合起来,弄一套流水线,减轻一定工作压力

    工具介绍

    • 所有的组件都是使用 docker 跑的,所以一款好用的 docker 的 ui 管理工具很重要,那就是rancher。这里只是用来管理一些工具,有点屈才了
    • 项目代码托管使用 gitlab,其内置了 CI/CD,成套使用,非常方便
    • appveyor 也是一个 CI/CD 解决方案,基于asp.net core开发。其内置 nuget server,这里只用到 nuget 包管理,CI/CD 的工作交给gitlab-runner

    相关教程

    感想

    • 从今年开始,陆陆续续接触 docker,寻找最佳切入点,幸遇 rancher,一个很好用的 docker 集群管理工具。其实一开始只是想要个管理工具,填写镜像、设置端口、设置数据卷等,操作更加方便,还有备份数据什么的。使用的过程中发现,docker 对于快速部署,还原备份,快速验证一些技术都很给力,无论是生产使用还是个人使用,都很棒
    • 公司使用的源码管理是 svn,起初是由于迁就一小部分人,而后来的同事大都会 git,考虑迁移到 git。并且在一次小事故中,由于 svn 不是分布式的,独服务器一份版本记录,与本地的对不上,需要重新提交最后一次的代码,管理不当很容器造成损失。最要紧的是,由于历史原因,所有的项目都是在同一个目录,随着项目越来越多,这个库越来越大,也越来不好管理,迁移到 git 势在必行。既然要迁移,并考虑到以后的发展,与现代技术接轨,最好是 docker 部署,那 gitlab 是很好地选择

    下一目标

    • 下一阶段就是要补齐上面所述实例,真正将这流水线用起来,发挥它应有的作用
    • 首先是添加前端项目的自动部署,一个难题是项目需要部署到 win 服务器,将在 linux 打包好的前端项目部署过去
    • 然后是授权中心,同一账号管理。新项目开发直接使用授权中心登陆,免去重复登陆麻烦

    补充

    • rancher可以不使用,整个流水线跑起来只需要gitlab+gitlab-runner+docker

    总结

    • 一路走来,以工作中可能用到的技术为指导,不断学习使用组合各种工具,尽可能提高工作效率,抽出更多时间学习更深层东西。感觉提高的不仅是学习能力,还有相应的思想提升
    • 在如今项目复杂度增加,技术应用越来越复杂的环境中,单单会一点技术是不够的。环境要求我们必须是个多面手,深入研究一门技术,其他作为拓展,横纵一起发展,才能从容应对
  • 相关阅读:
    VI中的批量替换--转载
    Zookeeper集群
    Zookeeper实现Master选举(哨兵机制)
    分布式session之token解决方案实现
    浏览器
    分布式session之redis解决方案实现
    服务器操作常用
    Nginx安装教程(Centos6.8)
    分布式锁(Redis实现)
    开发总结
  • 原文地址:https://www.cnblogs.com/xxred/p/12096948.html
Copyright © 2011-2022 走看看