小公司的软件开发IT工具箱

目录

工具链困境

难题的解决

达到的效果

资源要求低

工具箱一览

1、代码管理工具

2、自动化发版(测试)工具

3、依赖库(制品包)管理

4、镜像管理

5、授权管理(可选)

待讨论:为什么不是jenkins

相关链接


工具链困境

小公司开发人员少,一般只有几个。为此专门招聘IT人员搭建庞大的IT框架有点不划算。

但是靠开发人员本地维护代码和版本又不方便,既增加了开发人员的工作量,又增加了管理难度。

难题的解决

搭建一套简单的软件IT设施,不需要IT人员维护,同时又能提高我们的开发效率。

这样就一站式解决代码管理,自动化发版,自动化测试,依赖库(制品包)管理,镜像管理,授权管理等问题。

达到的效果

  • 组织规范:代码、发版二进制文件统一管理。

  • 流水线作业,自动化程度高:研发通过打tag或者提交mr的方式触发流水线自动编译、打包、测试和上传等动作。不用担心拉错分支,编错版本。

  • 学习成本低,易上手:只需基础的git,docker使用经验,熟悉wget和curl等基础的文件上传和下载。

资源要求低

一台Linux服务器

工具箱一览

1、代码管理工具

gitlab服务器社区版

建议部署到docker中,既不影响物理机环境,后续一旦有迁移需求,也很方便

2、自动化发版(测试)工具

gitlabrunner

安装方式简单,下载deb包安装即可,因此可以部署到物理机。 也支持部署到docker中。

经过简单的配置后,就可以在gitlab上配置CI,通过gitlabrunner做流水线CICD发版和测试。

3、依赖库(制品包)管理

最简单的方式是搭建一个http文件服务器(nginx或者其他)

最好是安装artifactory专业的制品库管理工具,他具有严格的权限管理且有web页面

4、镜像管理

  • dockerfile和构建脚本: 用git管理

  • docker镜像: 用artifactory或harbor存储和管理

5、授权管理(可选)

openLDAP可以配置到git,artifactory以及harbor上面实现类似域帐号的统一认证功能

安装openLDAP后可以接入统一认证系统,实现一个用户名密码登录git,artifactory等所有系统

如果觉得配置起来麻烦,可以通过各平台手动添加用户或者手动注册的方式进行,例如直接通过gitlab页面注册

待讨论:为什么不是jenkins

jenkins也是一个CICD工具链,有很多使用场景。

但对小型团队的收益有限,还增添了额外的学习成本。

相关链接

CICD:为gitlab搭建gitlab-runner服务支持docker流水线pipeline

这写是我在小公司的真实实践,希望能帮助到同样在小公司的你。

相关推荐
天堂的恶魔94619 分钟前
软件测试 ——Postman(Newman的使用)
测试工具·postman
dntktop22 分钟前
隐私保护+性能优化,RyTuneX 让你的电脑更快更安全
运维·windows
fajianchen1 小时前
大厂案例——腾讯蓝鲸DevOps类应用的设计与实践
运维·devops
黯然~销魂1 小时前
root用户Linux银河麒麟服务器安装vnc服务
linux·运维·服务器
huaweichenai2 小时前
windows下修改docker的镜像存储地址
运维·docker·容器
周杰伦_Jay2 小时前
详细介绍:Kubernetes(K8s)的技术架构(核心概念、调度和资源管理、安全性、持续集成与持续部署、网络和服务发现)
网络·ci/cd·架构·kubernetes·服务发现·ai编程
�时过境迁,物是人非3 小时前
ECS中实现Nginx四层和七层负载均衡以及ALB/NLB实现负载均衡
运维·nginx·负载均衡
Zfox_3 小时前
【Linux】进程间关系与守护进程
linux·运维·服务器·c++
大新新大浩浩3 小时前
jenkins平台使用Login Theme、Customizable Header插件定制修改登陆页图片文字及首页标题
运维·servlet·jenkins
laimaxgg3 小时前
Linux关于华为云开放端口号后连接失败问题解决
linux·运维·服务器·网络·tcp/ip·华为云