• Docker图形界面管理之Shipyard


    一、介绍

      Shipyard基于Docker API实现的容器图形管理系统,支持container、images、engine、cluster等功能,可满足我们基本的容器部署需求。

      可堆栈的Docker管理
      基于Docker Swarm,Shipyard可让您管理Docker资源,包括容器,图像,私人注册表等等。
      Shipyard与其他管理应用程序的不同之处在于它提高了可组合性,并与Docker Remote API 100%兼容。

      Shipyard管理container、images、engine、cluste范围内的私人注册管理机构以及提供身份验证和基于角色的访问控制。

      官网:
      https://www.shipyard-project.com/docs/deploy/
      https://www.shipyard-project.com/docs/deploy/manual/  

    镜像名称

    运行服务

    描述

    rethinkdb

    shipyard数据库

    一个Nosql数据库,用于存储shipyard系统的数据,比如账号、节点、容器等信息

    microbox/etcd

    服务注册、发现系统

    k/v存储系统,用于swarm节点实现服务注册、发现。也支持consul、zookeeper

    shipyard/docker-proxy

    docker API代理

    连接本地/var/run/docker.sock代理,用于让swarm agent连接api管理

    swarm

    swarm集群

    官方管理docker集群工具,使得多个engine为一个整体管理,对外提供swarm manager api 用户就像操作单台engine一样

    shipyard/shipyard

    shipyard前端

    容器web管理系统,内部连接swarm manager管理容器和 rethinkdb存储数据

    二、部署

      2.1 Datastore

      Shipyard使用RethinkDB作为数据存储。 
      首先我们将启动一个RethinkDB容器。 

     docker run 
    -ti 
    -d 
    --restart=always 
    --name shipyard-rethinkdb 
    rethinkdb
    

      2.2 Discovery

      要启用Swarm leader选举,我们必须使用来自Swarm容器的外部键值存储。 
      对于这个例子,我们将使用etcd,但是可以使用Swarm支持的任何键/值后端。

    docker run 
    -ti 
    -d 
    -p 4001:4001 
    -p 7001:7001 
    --restart=always 
    --name shipyard-discovery 
    microbox/etcd -name discovery
    

      2.3 Proxy

      默认情况下,Docker引擎只侦听套接字。 我们可以重新配置引擎来使用TLS,也可以使用代理容器。
      这是一个非常轻量级的容器,它只是将来自TCP的请求转发给Docker侦听的Unix套接字。
      注意:如果使用手动TCP / TLS配置,则不需要此项。

    docker run 
    -ti 
    -d 
    -p 2375:2375 
    --hostname=$HOSTNAME 
    --restart=always 
    --name shipyard-proxy 
    -v /var/run/docker.sock:/var/run/docker.sock 
    -e PORT=2375 
    shipyard/docker-proxy:latest
    

      2.4 Swarm Manager

      这将运行一个Swarm容器配置为管理。

    docker run 
    -ti 
    -d 
    --restart=always 
    --name shipyard-swarm-manager 
    swarm:latest 
    manage --host tcp://0.0.0.0:3375 etcd://172.16.200.208:4001
    
    # 宿主机地址
    

      2.5 Swarm Agent

      这运行一个Swarm代理,允许节点调度容器。

    docker run 
    -ti 
    -d 
    --restart=always 
    --name shipyard-swarm-agent 
    swarm:latest 
    join --addr 172.16.200.208:2375 etcd://172.16.200.208:4001
    

      2.6 Controller

      这将运行Shipyard控制器。

    docker run 
    -ti 
    -d 
    --restart=always 
    --name shipyard-controller 
    --link shipyard-rethinkdb:rethinkdb 
    --link shipyard-swarm-manager:swarm 
    -p 8080:8080 
    shipyard/shipyard:latest 
    server 
    -d tcp://swarm:3375
    

      2.7 浏览器访问

      IP+端口
      192.168.1.82:8080
      用户名:admin
      密码:shipyard

      

      

  • 相关阅读:
    黄聪:PowerPoint设计编辑动画的时候图层隐藏和显示问题
    黄聪:如何在Windows上安裝BeautifulSoup
    黄聪:二、如何通过URL获取其他网页源代码内容(火狐插件扩展开发教程)
    黄聪:2006 MySQL server has gone away错误,最大值溢出解决办法 mysql max_allowed_packet 查询和修改
    黄聪:解决python中文处理乱码,先要弄懂“字符”和“字节”的差别
    ExtAspNet v2.2.1
    ExtAspNet v2.3.2
    [原创]全球首款不使用ViewState的Asp.Net2.0控件库
    [原创]从程序员角度分析安徽电信HTTP劫持的无耻行径 草根的暂时胜利
    [原创]从程序员角度分析安徽电信HTTP劫持的无耻行径 – 之深度分析
  • 原文地址:https://www.cnblogs.com/bigberg/p/8483239.html
Copyright © 2020-2023  润新知