Docker入门与应用系列(八)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存储数据 |
自动化部署
curl -sSL https://shipyard-project.com/deploy |bash -s
手动部署
Datastore
Shipyard使用RethinkDB作为数据存储。
首先我们将启动一个RethinkDB容器。
$> docker run \ -ti \ -d \ --restart=always \ --name shipyard-rethinkdb \ rethinkdb
Datastore
Discovery
要启用Swarm leader选举,我们必须使用来自Swarm容器的外部键值存储。
对于这个例子,我们将使用etcd,但是可以使用Swarm支持的任何键/值后端。
$> docker run \ -ti \ -d \ -p : \ -p : \ --restart=always \ --name shipyard-discovery \ microbox/etcd -name discovery
Discovery
Proxy
默认情况下,Docker引擎只侦听套接字。 我们可以重新配置引擎来使用TLS,也可以使用代理容器。
这是一个非常轻量级的容器,它只是将来自TCP的请求转发给Docker侦听的Unix套接字。
注意:如果使用手动TCP / TLS配置,则不需要此项。
$> docker run \ -ti \ -d \ -p : \ --hostname=$HOSTNAME \ --restart=always \ --name shipyard-proxy \ -v /var/run/docker.sock:/var/run/docker.sock \ -e PORT= \ shipyard/docker-proxy:latest
Proxy
Swarm Manager
这将运行一个Swarm容器配置为管理。
$> docker run \ -ti \ -d \ --restart=always \ --name shipyard-swarm-manager \ swarm:latest \ manage --host tcp://0.0.0.0:3375 etcd://192.168.1.82:4001
Swarm Manager
Swarm Agent
这运行一个Swarm代理,允许节点调度容器。
$> docker run \ -ti \ -d \ --restart=always \ --name shipyard-swarm-agent \ swarm:latest \ etcd://192.168.1.82:4001
Swarm Agent
Controller
这将运行Shipyard控制器。
$> docker run \ -ti \ -d \ --restart=always \ --name shipyard-controller \ --link shipyard-rethinkdb:rethinkdb \ --link shipyard-swarm-manager:swarm \ -p : \ shipyard/shipyard:latest \ server \ -d tcp://swarm:3375
Controller
安装完毕后,进程查看
root@linux-node3:~# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 7ff955eb2507 shipyard/shipyard:latest minutes ago Up minutes ->/tcp shipyard-controller 5b911657956d swarm:latest minutes ago Up minutes /tcp shipyard-swarm-agent 1c7da1f43873 swarm:latest minutes ago Up minutes /tcp shipyard-swarm-manager f812939ee6b2 shipyard/docker-proxy:latest minutes ago Up minutes ->/tcp shipyard-proxy 629a2015e02d microbox/etcd minutes ago Up minutes ->/tcp, ->/tcp shipyard-discovery 7a877074bc14 rethinkdb minutes ago Up minutes /tcp, /tcp, /tcp shipyard-rethinkdb
浏览器访问
IP+端口
192.168.1.82:8080
用户名:admin
密码:shipyard







Docker入门与应用系列(八)Docker图形界面管理之Shipyard的更多相关文章
- Docker入门与应用系列(三)容器管理
一.启动容器 启动容器有两种方式,一种是基于镜像新建一个容器并启动,另一个是将终止状态的容器重新启动. 1.1 新建并启动 主要命令为 docker run 下面的命令输出一个”Hello,world ...
- Docker入门与应用系列(二)镜像管理
1.1 什么是镜像 简单说,Docker镜像是一个不包含Linux内核而又精简的Linux操作系统. 1.2 镜像从哪里来 Docker Hub是由Docker公司负责维护的公共注册中心,包含大量的容 ...
- Docker图形界面管理之Shipyard
一.介绍 Shipyard基于Docker API实现的容器图形管理系统,支持container.images.engine.cluster等功能,可满足我们基本的容器部署需求. 可堆栈的Docker ...
- Docker入门教程(七)Docker API
Docker入门教程(七)Docker API [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第七篇,重点介绍了Docker Registry API和 ...
- Docker入门教程(五)Docker安全
Docker入门教程(五)Docker安全 [编者的话]DockOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第五篇,介绍了Docker的安全问题,依然是老话重谈,入门者可以通 ...
- Docker入门教程(四)Docker Registry
Docker入门教程(四)Docker Registry [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第四篇,介绍了Docker Registry,它 ...
- Docker图形界面管理
之前都是使用命令行进行Docker的管理,这里简单介绍一下Docker的图形界面管理.之所以说简单介绍,是因为在生产环境都是集群,很少使用图形界面管理单台Docker主机,所以就演示记录一下,在个人测 ...
- Docker集中化web界面管理平台-Shipyard部署记录
Docker图形页面管理工具基本常用的有三种: DOCKER UI,Shipyard,Portainer.对比后发现,Shipyard最强大,其次是Portainer,最后是Docker ui.之前介 ...
- 【云计算】Docker集中化web界面管理平台shipyard
Docker集中化web界面管理平台shipyard docker shipyard seanlook 2015年01月05日发布 ...
随机推荐
- IFA Basics
The inverted-F antenna is shown in Figure 1. While this antenna appears to be a wire antenna, after ...
- 【DB2】判断连续时间,如果间断则新增一条记录
需求描述 例如:产品A01 2017-01-02到2017-01-03产品状态都是差,那么就是一条记录 但是在2017-01-04这天的状态不是差,到了5日这天又是差了 就是另外一条记录了 需求处理 ...
- spring中的AOP 以及各种通知 配置
理解了前面动态代理对象的原理之后,其实还是有很多不足之处,因为如果在项目中有20多个类,每个类有100多个方法都需要判断是不是要开事务,那么方法调用那里会相当麻烦. spring中的AOP很好地解决了 ...
- Javascript 判断网页横竖屏
本篇文章由:http://xinpure.com/javascript-to-determine-page-anyway-screen/ Html5 流行至今,自适应的网站已经多如牛毛,但是横竖屏的切 ...
- 0基础的小白怎么学习Java?
自身零基础,那么我们应该先学好Java,首先我们来了解下Java的特性: Java语言是简单的 Java语言的语法与C语言和C++语言很接近,使得大多数程序员很容易学习和使用Java.另一方面,Jav ...
- Android逆向之旅---SO(ELF)文件格式详解(转)
第一.前言 从今天开始我们正式开始Android的逆向之旅,关于逆向的相关知识,想必大家都不陌生了,逆向领域是一个充满挑战和神秘的领域.作为一名Android开发者,每个人都想去探索这个领域,因为一旦 ...
- unity3d动态操作组件
利用范型,动态操作组件(添加或删除) e.AddComponent<CubeTranslate> ();//动态添加组件 Destroy (e.GetComponent<CubeTr ...
- yum安装方式的php,切换NTS为ZTS版本
用 yum安装方式的php,切换NTS为ZTS版本(切换为线程安全版本) 最好按我这个方法安装(安装比较全一点): https://www.cnblogs.com/fps2tao/p/7699448. ...
- 在Linux下如何查CC攻击?
什么是CC攻击?CC攻击就是利用大量代理服务器对目标计算机发起大量连接,导致目标服务器资源枯竭造成拒绝服务.那么如何判断查询CC攻击呢?本文主要介绍了一些Linux下判断CC攻击的命令. AD:201 ...
- [Android] 通过Menu实现图片怀旧、浮雕、模糊、光照和素描效果
因为随手拍项目想做成类似于美图秀秀那种底部有一排Menu实现不同效果的功能,这里先简介怎样通过Menu实现打开相冊中的图片.怀旧效果.浮雕效果.光照效果和素描效果.后面可能会讲述怎样通过Pop ...