文档章节

docker registrator配合consul使用的问题

chris_2009
 chris_2009
发布于 2016/04/19 18:14
字数 255
阅读 646
收藏 2

上一篇文章中有介绍使用registrator将docker容器启动的服务注册到consul,再用consul-template自动更新ngnix配置,实现系统服务的自动发现。

在多个docker主机的情况下存在以下问题:
registrator获取的是本地地址:例如:

{
    "Node":"consulserver",
    "Address":"172.17.0.5",
    "ServiceID":"registrator:dockercompose_web_7:80",
    "ServiceName":"web",
    "ServiceTags":["backend"],
    "ServiceAddress":"172.17.0.4",
    "ServicePort":80,
    "ServiceEnableTagOverride":false,
    "CreateIndex":17,
    "ModifyIndex":17
}

解决办法

在registrator注册时将地址替换为外网地址
其中使用到consul的服务注册和服务列表

  • 服务注册
    curl -X PUT -d '{"Node": "consulserver", "Address": "192.168.17.161","Service": {"Service": "web", "tags": ["backend"], "Port": 32778,"ServiceAddress":"192.168.17.161"}}' http://127.0.0.1:8500/v1/catalog/register
  • 服务列表
    curl http://127.0.0.1:8500/v1/catalog/service/web
    注册以后的地址:
    { 
     "Node":"consulserver",
     "Address":"192.168.17.161",
     "ServiceID":"registrator:dockercompose_web_7:80",
     "ServiceName":"web",
     "ServiceTags":["backend"],
     "ServiceAddress":"",
     "ServicePort":80,
     "ServiceEnableTagOverride":false,
     "CreateIndex":17,
     "ModifyIndex":17
    }

© 著作权归作者所有

共有 人打赏支持
chris_2009
粉丝 3
博文 10
码字总数 8066
作品 0
深圳
高级程序员
consul docker register

docker consul register 在很多就得文档中都是用的 但是 在github 中已经换成了 gliderlabs/registrator gliderlabs/registrator 如果发生权限错误 在其中加上这一句话 --privileged=true 实...

疯code
2016/07/19
32
0
大规模 WebSocket 集群项目 AnyIM 实战

一、概述 WebSocket 应用场景非常广泛,例如社交聊天、弹幕、多玩家游戏、协同编辑、股票基金实时报价、体育实况更新、视频会议/聊天、实时定位、在线教育、智能家居等,这些场景都与我们的生...

Anoyi
2017/11/17
0
0
Ocelot + Consul + Registrator 基于Docker 实现服务发现、服务自动注册

目录 1. Consul集群搭建 1.1 F&Q 2. Registrator服务注册工具 2.1 F&Q 3. clientservice服务Demo 3.1 Program.cs 3.2 ValuesController.cs 3.3 Dockerfile 3.4 制作镜像并启动容器 4. Ocelo......

我打农村来
07/25
0
0
基于容器的后端服务架构

在探索kubernetes的应用时,调研了几个gateway,发现fabio支持发现服务,自动生成路由,结合consul,registrator, 可以很容易的部署一套服务,比较轻量,很容易玩起来。 结构大致为: Start ...

有容云
2016/12/08
19
0
Docker 的未来

Dokku的作者以及Docker早期的贡献者Jeff Lindsay在CenturyLink的一个采访中讨论了他正在参与的Docker的相关项目以及他们打算如何解决涉及到面向Docker服务的架构的问题。 Jeff联合Flynn开发了...

夕水溪下
2014/08/06
6.8K
6

没有更多内容

加载失败,请刷新页面

加载更多

jQuery学习笔记180924

jQuery - AJAX 简介 什么是 AJAX? AJAX = 异步 JavaScript 和 XML(Asynchronous JavaScript and XML)。 简短地说,在不重载整个网页的情况下,AJAX 通过后台加载数据,并在网页上进行显示...

颖伙虫
17分钟前
1
0
springboot整合vue小试牛刀

序 本文主要研究一下如何在springboot工程整合vue maven <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-we......

go4it
18分钟前
1
0
使用python的profiler工具

主要用来检测python coding的执行时间 fly profiler

steel7c4
23分钟前
0
0
大数据日知录笔记

硬件成本的快速下降,使得电子设备的无处不在成为可能,数据无处不在,无时不在. IBM用3V(Volume,Velocity,Variety)来描述大数据的特点,后来又增加了Value这个维度,即价值密度低的数据成为大数据...

凌渡
32分钟前
0
0
IDEA、WebStorm最新永久激活方式

今天早上一大早打开IDEA发现激活已过期,遂开始寻找激活码。但是一直不成功,后来终于找到一种比较靠谱的激活方式。在此记录下来,以备不时之需。 目前网上现有的激活方式大概有这么三种 激活...

耒耒耒耒耒
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部