iManager-您的私人镜像管家
尽管Docker官方提供了公共的镜像仓库DockerHub,但从安全性和稳定性等方面考虑,部署私有镜像仓库是非常有必要的。Harbor是一个由VMware公司开源的企业级的Docker Registry管理项目,是我们搭建私有镜像仓库的不二之选。
而自动化一直是运维工作中的重中之重。
Yiiong希望你能够将Harbor与飞书机器人联系起来,方便管理员统一管理镜像,使管理员随时都可以知晓仓库镜像的变动信息,管理员动动手指就可以对仓库里的镜像进行操作等。
前置准备
-
建议使用服务器搭建Harbor仓库,并且配置好https
-
申请一个飞书企业账号
-
可能需要一个域名?
任务
友善的用户交互
用户肯定需要知道你的机器人都可以干些什么事情吧
用户向机器人发送帮助
,机器人返回可以实现的功能列表
当用户发送了一些乱七八糟的信息时,机器人需要做出一定的回复,比如我听不懂捏
Level 0 通知
当镜像状态发生改变时,机器人向管理员发起通知
通知内容包括:
- 镜像状态(Push or Pull or Delete)
- 镜像名称以及标签
- 镜像状态改变的日期
- 镜像状态改变者
Level 1 简单查询
管理员向机器人发送查询项目
,机器人返回所有项目的名称、所属者以及访问级别
管理员向机器人发送查询仓库
,机器人返回所有仓库的名称、创建时间以及更新时间
Level 2 镜像管理
在我们的团队开发过程中,难免会出现多次推送镜像但镜像测试不通过的情况,
Yiiong希望当镜像被以Push状态推送时,通知内容中新增加一个超链接按钮,点击这个按钮即可删除这个镜像
另一种方式是,向机器人发送删除镜像:镜像名
,即可删除某个镜像
Level 3 用户管理
我们的整个仓库不可能只有一个管理员用户,管理员经常需要为不同的成员创建不同的用户
Yiiong希望管理员向机器人发送创建用户:用户名-密码-邮箱
即可创建一个新用户
并且可以将特定用户以开发者身份加入到特定项目的成员中
Level 4 打包
编写Dockerfile,将你的所有文件用Docker打包制作成镜像,使其他用户填入一些必要的信息就可以愉快地使用你的作品辣!
加分项
- 发挥你的奇思妙想,实现一些意想不到的功能
- 使用Kubernetes完成必要的内网穿透
- 使用UptimeKuma监控你的仓库,当出现问题时通过机器人返回一些必要信息
- 飞书开放平台提供了一种美观的”卡片式“消息,使用它的话答辩的时候一定很潇洒啊
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Yiiong's Blog!