「容器管理系统」 1. 开篇:框架选型和环境搭建

一、项目背景

目前开源的容器管理项目只是单纯的管理容器,功能比较单一,业务功能复杂时,需要维护的可视化应用比较繁杂,因此,该项目想法由此而生,目的就是想实现一个综合云原生管理系统,不只是单一容器管理,还包含一些云原生需要的一些功能,实现一个系统管控所有的终极系统。

想法是好的,但是也要一步一来,目前首要切入点:容器管理,后面慢慢往后延伸,希望可以实现上面所说!

二、用什么框架?

目前市面上的web框架很多,像:GinBeegoEchoIris等,琳琅满目,各有各的好,这里咱们不对比框架的优缺点。

本次项目选用:Gin 作为核心框架,后面会考虑选用微服务架构,目前先谈论。

为什么选用 Gin 框架呢? 最直观的回答:熟悉,用的人多,社区活跃,可维护性高

三、做哪些功能?

既然是系统,怎么会不构思业务功能呢?

这里初版构思了一些功能:

  • 通用功能
    • 登录注册
    • JWT鉴权
    • 权限管理
  • 容器管理
    • 容器列表
    • 镜像管理
    • 创建容器
    • 容器扩容/缩容
    • 容器监控
    • 容器重启
  • 容器编排
  • ETCD
    • 服务注册
    • 服务发现

上面的功能只是初步构思,后面会完善一些更加便于操作的功能....

四、依赖环境有哪些?

  • golang 1.16.5
  • Docker Client 20.10.13
  • Docker Engine 20.10.13
  • Docker Desktop 4.6.1

五、结构目录

shell 复制代码
├── Dockerfile
├── LICENSE
├── README.md
├── cmd
├── conf
├── controllers
├── dmg
├── go.mod
├── go.sum
├── middleware
├── pkg
├── services
├── tag.sh
└── test

六、结束语

之前也写过几个开源项目,但是都是以学习为目的,所以那些项目都是未完成搁置状态,以后会慢慢的完善的。

但是这个系统我希望可以实现我定下的目标,一步一个脚印。也希望各位大家一起鼓励,一起监督....

相关推荐
用户6757049885029 小时前
Go 语言里判断字符串为空,90% 的人都写错了!
后端·go
用户6757049885029 小时前
Go 进阶必修:90% 的人都没用对的“表驱动法”
后端·go
知恒1 天前
Go语言接口与多态
go
知恒1 天前
Go语言变量与数据类型
go
知恒1 天前
Go包管理与模块化
go
HokKeung1 天前
飞书 lark-cli 如何存储 tenant_access_token 和 user_access_token
人工智能·go
止语Lab2 天前
sync.Pool 的真正分界线不是对象大小——一次 benchmark 翻车记录
go
HokKeung2 天前
Go 里的 IO 应该怎么管理
go
喵个咪2 天前
Go-Wind HTTP 服务器从入门到精通
后端·http·go
喵个咪2 天前
Go-Wind gRPC 服务器从入门到精通
后端·go·grpc