「容器管理系统」 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

六、结束语

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

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

相关推荐
嘿嘿8 小时前
使用 Gin 框架加载 HTML 模板:`LoadHTMLGlob` 和 `LoadHTMLFiles` 的比较与优化
后端·go·gin
Java水解11 小时前
为何最终我放弃了 Go 的 sync.Pool
后端·go
得物技术14 小时前
Golang HTTP请求超时与重试:构建高可靠网络请求|得物技术
java·后端·go
喵个咪1 天前
Kratos 下使用 Protobuf FieldMask 完全指南
后端·go
Mgx2 天前
内存网盘 - Go语言实现的WebDAV内存文件系统
go
百锦再2 天前
第15章 并发编程
android·java·开发语言·python·rust·django·go
虫洞没有虫3 天前
Go语言学习笔记(一)
笔记·go·区块链
wohuidaquan3 天前
AI为何跳过你?GEO中的E-E-A-T权重
go
百锦再3 天前
选择Rust的理由:从内存管理到抛弃抽象
android·java·开发语言·后端·python·rust·go
百锦再4 天前
大话Rust的前生今世
开发语言·后端·rust·go·内存·时间·抽象