docker可视化管理工具 Docker Manager

目录

    • 项目介绍
    • 工具介绍
        • 资源总览
        • 镜像管理
        • 容器管理
    • 安全性
    • 客户端

项目介绍

docker可视化管理平台,使用vue + python flask 前后端分离实现。GitHub地址:https://github.com/guojiaxing1995/docker-manager。
这个工具设计的初衷是为了更加方便的对多台服务器进行docker管理,减少平时工作中切换登录不同服务器和执行命令的时间,提高工作效率。同时也为不熟悉docker的人提供帮助,能够更加直观的认识和学习docker。
目前实现了工作中一般用到的基本命令:如 镜像查询、镜像拉取、镜像删除、创建容器、启动容器、停止容器、删除容器、动态查看日志、进入容器等。

在这里插入图片描述
这里需要说下项目结构。后端框架都是flask,但是分了两个后端。原因是在做动态日志的时候后端使用了flask-socketio这个库,而进入容器操作其实就是一个web terminal,这个功能参考网上使用了flask-sockets库,这两个库不兼容无法同时使用。

工具介绍

资源总览

实现对服务器基本信息的查看
docker可视化管理工具 Docker Manager_第1张图片

镜像管理

当前所选服务器的 镜像列表查询、镜像删除、创建容器
docker可视化管理工具 Docker Manager_第2张图片
镜像查询、镜像拉取
docker可视化管理工具 Docker Manager_第3张图片
创建容器
docker可视化管理工具 Docker Manager_第4张图片

容器管理

当前所选服务器的容器列表查询、容器启动、停止、删除
docker可视化管理工具 Docker Manager_第5张图片
查看实时日志
docker可视化管理工具 Docker Manager_第6张图片
web terminal(进入容器执行命令)
docker可视化管理工具 Docker Manager_第7张图片

安全性

对docker实现远程操作,实际是调用了docker remote api,这需要被调用的服务器开启远程访问权限,允许其被远程操作,默认端口是2375。这就带来一个问题,只要知道这台服务器IP的人都可以通过api对该服务器进行远程操作,这是极其不安全的。之前我的个人服务器就是被远程调用创建异常容器后中了挖矿病毒。这就需要对docker api 访问进行鉴权。

docker可视化管理工具 Docker Manager_第8张图片
docker可视化管理工具 Docker Manager_第9张图片
在后端项目中,config目录下是所有的配置文件。其中hosts.yaml文件配置的是要管理的服务器。每个服务器有两个属性,host是访问域名或IP,certification是目标服务器是否会对docker api 进行鉴权(如何开启远程api访问和鉴权可去docker官网查询相关资料)。如果是需要鉴权的服务器,需要在certification目录下建一个以被鉴权服务器host为名称的文件夹,将cert.pem和key.pem文件放在下面即可。

客户端

docker-manager-client是docker manager的客户端版本。
目前只是使用 electron 嵌入了web端的地址。

效果如下:

你可能感兴趣的:(前端裁缝,应该是个假运维)