1.swarm安装

swarm安装有很多种服务注册的方式,token、etcd、zookeeper,本文主要以swarm默认的token方式进行安装。因为最新的docker已经集成了swarm,所以从安装docker开始,本文所用操作系统为ubuntu14.04。

IP           name     service

10.241.81.233 swarm-1  manage

10.241.81.234 swarm-2  worker

10.241.81.235 swarm-3  worker

参考文档:https://store.docker.com/editions/community/docker-ce-server-ubuntu

(1).set up the repository

sudo apt-get -y install \
apt-transport-https \
ca-certificates \
curl curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
sudo apt-get update

(2)Install the latest version of Docker CE on Ubuntu:

sudo apt-get -y install docker-ce

(3)Run the following command to create a new swarm:

(参考:https://docs.docker.com/engine/swarm/swarm-tutorial/create-swarm/)

mananger:
# docker swarm init --advertise-addr 10.241.81.233
Swarm initialized: current node (cpds4fjp7vv6ttqm4y77vmhae) is now a manager. To add a worker to this swarm, run the following command: docker swarm join \
--token SWMTKN--5gmmq1w6qsm2zm3wfjkx5at3j2a5mwy1k0qjfp16womwgkqeqj-4ttti9ppo6aqebuw4b1m46vo7 \
10.241.81.233: To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions. worker:
docker swarm join \
--token SWMTKN--5gmmq1w6qsm2zm3wfjkx5at3j2a5mwy1k0qjfp16womwgkqeqj-4ttti9ppo6aqebuw4b1m46vo7 \
10.241.81.233:

在manage上执行docker node ls,查看node的状态:

# docker node ls
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS
7gzxsm1kmzf92bz8tply3j6dj swarm- Ready Active
cpds4fjp7vv6ttqm4y77vmhae * swarm- Ready Active Leader
ejrnqul66xm1xy62ankhuhvn1 swarm- Ready Active

2.安装register及register-web (参考:https://hub.docker.com/r/hyper/docker-registry-web/)

docker run -itd --restart=always -p : --name registry-srv registry:2

docker run -idt  --restart=always  -p 8090:8080 --name registry-web --link registry-srv -e REGISTRY_URL=http://10.241.81.233:5000/v2 -e REGISTRY_NAME=localhost:5000 

可以访问register-web,http://10.241.81.233:8090。

修改配置docker配置文件,在DOCKER_OPTS加入--insecure-registry=10.241.81.233:5000,我的原先为空,所以改后状态如下:

# vi /etc/default/docker

DOCKER_OPTS="--insecure-registry=10.241.81.233:5000"

重启docker 就 可以往registerpush镜像了。

3.shipyard安装方式有俩种,一种是脚本,一种是手动,这里选择的脚本安装。

(参考:https://shipyard-project.com/docs/deploy/)

shipyard界面:

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

然后访问 http://10.241.81.233:8080  就有界面了。

如果需要加入新的节点:

curl -sSL https://shipyard-project.com/deploy | ACTION=node DISCOVERY=etcd://10.241.81.233:4001 bash -s

就能看到有多个节点了,如下图:

也可把register加进去管理:

整个安装部署到此就结束了,后续监控也可以用prometheus收集cadvisor监控swarm的集群状态。

docker swarm+register-web+shipyard搭建的更多相关文章

  1. Docker Swarm redis 集群搭建

    Docker Swarm redis 集群搭建 环境1: 系统:Linux Centos 7.4 x64 内核:Linux docker 3.10.0-693.2.2.el7.x86_64 Docke ...

  2. Docker Swarm nginx 集群搭建

    环境1: 系统:Linux Centos 7.4 x64 内核:Linux docker 3.10.0-693.2.2.el7.x86_64 Docker 版本:18.09.1 redis 版本:ng ...

  3. Docker Swarm 集群环境搭建及弹性服务部署

    上一篇文章<Docker Swarm 集群管理利器核心概念扫盲>中我们把 Swarm 重要的概念性知识给大家讲解了一波,理论完事就该实战了,这篇文章带大家从零开始,搭建 Docker Sw ...

  4. docker swarm使用keepalived+haproxy搭建基于percona-xtradb-cluster方案的高可用mysql集群

    一.部署环境 序号 hostname ip 备注 1 manager107 10.0.3.107 centos7;3.10.0-957.1.3.el7.x86_64 2 worker68 10.0.3 ...

  5. docker swarm集群搭建及使用Portainer、shipyard

    一.规划 1.swarm01作为manager节点,swarm02和swarm03作为worker节点. # cat /etc/hosts 127.0.0.1   localhost 192.168. ...

  6. 【云计算】Docker集中化web界面管理平台shipyard

    Docker集中化web界面管理平台shipyard docker shipyard seanlook                        2015年01月05日发布             ...

  7. docker集成管理工具-shipyard的开发环境搭建笔记

    前段时间一直在研究openstack,后来老师告诉我需要用docker容器来搭建hadoop集群,所以就将战场转移到docker上来了,话说docker最近这段时间太火了,但是说实话我觉得应用起来还不 ...

  8. Docker 入门之swarm部署web应用

    笔者近期在利用的docker搭建一个swarm集群,目前的应用还是入门级的,读者可自行根据自己的需要修改自己需要部署的应用,今天笔者介绍的是一个web应用的swarm集群的搭建.看这篇文章之前,我希望 ...

  9. Docker集中化web界面管理平台-Shipyard部署记录

    Docker图形页面管理工具基本常用的有三种: DOCKER UI,Shipyard,Portainer.对比后发现,Shipyard最强大,其次是Portainer,最后是Docker ui.之前介 ...

随机推荐

  1. VMware提示:已将该虚拟机配置为使用 64 位客户机操作系统。但是,无法执行 64 位操作。解决方案

    新买了个笔记本,在学习大数据的时候装上VMWare,运行虚拟机发现提示无法执行64位操作.本人系统是win7,64位系统. 之后就是一顿度娘,发现千篇一律都是检测CPU支不支持虚拟化,支持的话去BIO ...

  2. 自然语言交流系统 phxnet团队 创新实训 项目博客 (二)

    基本要求 打开软件,即可进入2D文本交流界面, 软件此时已经连接到服务器,点击文本输入框输入你想说的话,点击发送按钮即可进行交流,点击CHAT和STUDY分别切换到聊天模式或是学习模式,聊天模式是机器 ...

  3. selenium测试(Java)--截图(十九)

    package com.test.screenshot; import java.io.File; import java.io.IOException; import org.apache.comm ...

  4. C++之程序时间统计类实现

    /********** TimeCounter.h huangsy13@gmail.com **********/ #ifndef TIMECOUNTER #define TIMECOUNTER #i ...

  5. 什么是事务(transaction)?它有什么好处

    为了完成对数据的操作,企业应用经常要求并发访问在多个构件之间共享的数据.这些应用在下列条件下应该维护数据的完整性(由应用的商务规则来定义): 分布式访问一个单独的数据资源,以及从一个单独的应用构件访问 ...

  6. 第二百八十三节,MySQL数据库-MySQL存储过程

    MySQL数据库-MySQL存储过程 MySQL存储过程,也就是有点像MySQL函数,但是他与MySQL函数是有区别的,后面会讲到函数,所以注意区分 注意:函数与存储过程的区别 存储过程是:CREAT ...

  7. oracle jar

    关于oracle 11g jdbc驱动 的jar包 (2012-11-21 11:17:41)转载▼ 标签: 杂谈 分类:java学习 oracle11的jdbc\lib下没有classer12.ja ...

  8. par函数的xaxt函数-控制x轴刻度的显示

    xaxt 参数控制x轴的刻度以及刻度对应的标签时候显示 默认值为‘s’, 表示显示,代码示例 par(xaxt = 's') plot(1:5, 1:5, main = "title&quo ...

  9. 【Java面试题】58 char型变量中能不能存贮一个中文汉字?为什么?

    char型变量是用来存储Unicode编码的字符的,unicode编码字符集中包含了汉字,所以,char型变量中当然可以存储汉字啦.不过,如果某个特殊的汉字没有被包含在unicode编码字符集中,那么 ...

  10. Linux 权限修改

    chown -R 用户名:组名 文件夹名chown -R xu:hadoop hadoop 将hadoop目录(以及其下的所有子目录/文件)的属主用户设为xu, xu 的组名为group