docker集中化管理平台--shipyard部署
Shipyard是建立在docker集群管理工具Citadel之上的可以管理容器、主机等资源的web图形化工具,包括core和extension两个版本,core即shipyard主要是把多个 host上的 containers 统一管理(支持跨越多个host),extension即shipyard-extensions添加了应用路由和负载均衡、集中化日志、部署等;Shipyard是在Docker Swarm实现对容器、镜像、docker集群、仓库、节点进行管理的web系统。
shipyard特点:
1)支持节点动态集群,可扩展节点的规模(swarm、etcd方案)
2)支持镜像管理、容器管理、节点管理等功能
3)可视化的容器管理和监控管理
4)在线容console终端


Shipyard环境包括一下docker容器:
1)RethinkDB
deploy首先启动的就是RethinkDB容器,shipyard采用RethinkDB作为数据库来保存用户等信息
2)Discovery
为了使用Swarm,我们需要一个外部的密钥值存储群容器,shipyard默认是采用了etcd。
3)shipyard_certs
证书管理容器,实现证书验证功能
4)Proxy
默认情况下,Docker引擎只监听Socket,我们可以重新配置引擎使用TLS或者使用一个代理容器,转发请求从TCP到Docker监听的UNIX Socket。
5)Swarm Manager
Swarm管理器
6)Swarm Agent
Swarm代理,运行在每个节点上。
7)Controller
shipyard控制器,Remote API的实现和web的实现。
Shipyard环境部署:

下载官方一键部署脚本
https://shipyard-project.com/deploy 这个地址已经失效提取密码: kgqichmod 755 shipyard-deploy
sh shipyard-deploy
Deploying Shipyard -> Starting Database -> Starting Discovery -> Starting Cert Volume -> Starting Proxy -> Starting Swarm Manager -> Starting Swarm Agent -> Starting ControllerWaiting for Shipyard on 172.16.60.213:8080Shipyard available at http://172.16.60.213:8080Username: admin Password: shipyardUsername: admin Password: shipyard
如果想要修改web访问端口,则操作如下:
cat shipyard-deploy |grep 8080
echo " PORT: specify the listen port for the controller (default: 8080)"SHIPYARD_PORT=${PORT:-8080}比如将脚本中默认的8080端口改为80端口sed -i 's/8080/80/g' shipyard-deploy
然后重新部署即可cat shipyard-deploy |ACTION=remove bash
Removing Shipyard -> Removing Database -> Removing Discovery -> Removing Cert Volume -> Removing Proxy -> Removing Swarm Agent -> Removing Swarm Manager -> Removing ControllerDonecat shipyard-deploy| ACTION=node DISCOVERY=etcd://172.16.60.218:4001 bash
cat shipyard-deploy |ACTION=remove bash -s
Removing Shipyard
-> Removing Database -> Removing Discovery -> Removing Cert Volume -> Removing Proxy -> Removing Swarm Agent -> Removing Swarm Manager -> Removing ControllerDone

浙公网安备 33010602011771号