基于docker的集成命令管理

思考

  1. 随着项目或者框架的庞大,会需要越来越多的工具集成, 用于各个方便的生成和校验
  2. 虽然我们常用go开发系统,但是,很多工具也并不是全部都是go写的,怎么把非go语言工具集成在一起,需要一个很好的方法
  3. 工具升级,版本依赖等,怎么更好的解决
  4. 使用工具的人,怎么更好的升级,以及,升级推动也是个问题
  5. 怎么让不同的团队的工具通过一种方法集成在一起?
  6. 怎么让这些工具能够伴随ci cd系统

想法

  1. 通过docker的方式,屏蔽系统,屏蔽依赖,减少对于系统本身的影响
  2. 如果有新的命令需要集成了, 那么,通过dockerfile的方式,集成进去,然后,发布到系统的registry里面
  3. 入口可以是一个简单的命令行工具,用于检验docker镜像,更新docker镜像,甚至构建docker镜像等
  4. 命令行工具主动的去调用docker命令,然后,屏蔽各种参数,尽量的实现原生命令的操作方式
  5. 原生命令都是子命令的存在
  6. 自动更新的检测,如果发现了新版本,那么就重新拉取新的镜像
  7. 之前的想法是集成到go 通过cmd的方式封装一下,这样一来需要改动的地方还挺多,而且,还不一定兼容,版本问题等

grpc项目 工具集成

  1. lint
  2. protoc
  3. ghz
  4. grpcurl
  5. buf
  6. doc
  7. openapi
posted @ 2021-02-22 14:31  白云辉  阅读(94)  评论(0编辑  收藏  举报