zoukankan      html  css  js  c++  java
  • [置顶] docker web-GUI DockerUI和Shipyard对比

    DockerUI和Shipyard对比

    相似

    基于Docker API,提供等同Docker命令行的大部分功能,支持container管理,image管理。

    web页面查看和管理容器和镜像,均能批量管理容器的生命周期管理

    差异

    dockerui能修改容器配置
    dockerui修改容器

    dockerui能管理和新增网络
    dockerui能管理和新增网络

    dockerui能新增volume
    dockerui能新增volume

    Shipyard能创建容器
    Shipyard创建容器

    Shipyard能拉取镜像
    Shipyard能拉取镜像

    Shipyard能多主机管理,支持节点动态集群,可扩展节点的规模(swarm、etcd方案)
    Shipyard能多主机管理

    Shipyard能管理仓库
    Shipyard能管理仓库

    Shipyard能实现容器的伸缩、终端、stats等功能
    Shipyard能实现容器的伸缩、终端、stats等功能

    DockerUI

    优点

    支持容器批量操作,可以修改容器配置(需要重启容器),查看日志、top等命令
    支持image管理
    支持网络管理,可以创建、修改等
    支持镜像管理
    支持查看拓扑
    

    缺点

    不支持多主机
    不支持容器创建
    不支持容器终端
    

    部署

    docker run -itd --memory 1g --cpuset-cpus=0 --name dockerui --hostname dockerui -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock docker.io/uifd/ui-for-docker
    

    http://宿主机IP:9000

    Shipyard

    Shipyard是在Docker Swarm实现对容器、镜像、docker集群、仓库、节点进行管理的web系统。

    特性

    Shipyard是完全基于Docker API,支持container管理、engine管理(一个engine就是监听tcp端口的docker daemon)。

    优点

    支持多主机;
    容器管理:除了管理生命周期外,还支持批量、终端、log、新增、伸缩、stats等等。
    镜像管理:支持修改tag、pull等
    新增仓库
    

    缺点

    不支持修改容器配置。
    

    部署

    Shipyard是一款开源的图形化的Docker管理工具,现在官方有了自动安装脚本,使用非常方便。

    服务器端

    curl -s https://shipyard-project.com/deploy | bash -s
    

    Shipyard 启用了7个容器,默认访问端口是8080,默认用户名和密码是admin 和 shipyard

    节点

    加入服务器

    curl -sSL https://shipyard-project.com/deploy | ACTION=node DISCOVERY=etcd://服务器端地址:4001 bash -s
    

    退出服务器

    curl -sSL https://shipyard-project.com/deploy | ACTION=remove bash -s
    

    了解Shipyard

    几个概念

    engine

    一个shipyard管理的docker集群可以包含一个或多个engine(引擎),一个engine就是监听tcp端口的docker daemon。

    shipyard管理docker daemon、images、containers完全基于Docker API,不需要做其他的修改。

    另外,shipyard可以对每个engine做资源限制,包括CPU和内存;

    因为TCP监听相比Unix socket方式会有一定的安全隐患,所以shipyard还支持通过SSL证书与docker后台进程安全通信。

    rethinkdb

    RethinkDB是一个shipyard项目的一个docker镜像,用来存放账号(account)、引擎(engine)、服务密钥(service key)、
    扩展元数据(extension metadata)等信息,但不会存储任何有关容器或镜像的内容。

    Shipyard组件

    shipyard是由shipyard控制器以及周围生态系统构成,以下按照deploy启动顺序进行介绍(下面几个就是shipyard使用脚本安装后,启动的几个容器名)

    RethinkDB

    deploy首先启动的就是RethinkDB容器,shipyard采用RethinkDB作为数据库来保存用户等信息

    Discovery

    为了使用Swarm,我们需要一个外部的密钥值存储群容器,shipyard默认是采用了etcd。

    shipyard_certs

    证书管理容器,实现证书验证功能

    Proxy

    默认情况下,Docker引擎只监听Socket,我们可以重新配置引擎使用TLS或者使用一个代理容器,转发请求从TCP到Docker监听的UNIX Socket。

    Swarm Manager

    Swarm管理器

    Swarm Agent

    Swarm代理,运行在每个节点上。

    Controller

    shipyard控制器,Remote API的实现和web的实现。

  • 相关阅读:
    poj 2135 最小费用最大流初步
    HDU4864 贪心好题
    HDU 5643 约瑟夫环的应用
    HDU 5642 多重集排列数 递推
    HDU 5640
    HDU 2819 最大匹配
    poj 1988 多校联赛 带权并查集
    HDU 2817 多校联赛1
    HDU 2822 多校联赛1
    第二节(标识符,关键字,数据类型,运算符)
  • 原文地址:https://www.cnblogs.com/lykops/p/7348023.html
Copyright © 2011-2022 走看看