.net core微服务之基于Docker+Consul+Registrator服务注册服务发现
2018-04-23 15:34
1011 查看
一、Docker部分:
先拉最新的asp.net core的镜像:
将下载下来的镜像重命名,为什么要重命名?等会讲Registrator的时候再解释。执行下面的命令:
运行docker, 挂载本地目录/apps/QkaWebServer到容器中的/apps/dotnet/,将容器中的两个端口映射出来,其中80端口是网站的端口,8800端口是thrift服务端口,执行如下命令:
查看所有容器,执行命令:
运行.net core程序及怎么配置守护程序supervisor,请查看之前的一篇博文http://www.cnblogs.com/focus-lei/p/6868324.html,不再赘述
二、Consul部分:
下载consul:
先拉最新的asp.net core的镜像:
docker pull microsoft/aspnetcore
将下载下来的镜像重命名,为什么要重命名?等会讲Registrator的时候再解释。执行下面的命令:
docker tag microsoft/aspnetcore qkawebserver
运行docker, 挂载本地目录/apps/QkaWebServer到容器中的/apps/dotnet/,将容器中的两个端口映射出来,其中80端口是网站的端口,8800端口是thrift服务端口,执行如下命令:
docker run -ti -d --restart=always --privileged -v /apps/QkaWebServer:/apps/dotnet/ -v /etc/hosts:/etc/hosts -p:80 -p:8800 qkawebserver /usr/sbin/init
查看所有容器,执行命令:
docker ps -a
运行.net core程序及怎么配置守护程序supervisor,请查看之前的一篇博文http://www.cnblogs.com/focus-lei/p/6868324.html,不再赘述
二、Consul部分:
下载consul:
wget https://releases.hashicorp.com/consul/1.0.7/consul_1.0.7_linux_amd64.zip[/code]
解压:unzip consul_1.0.7_linux_amd64.zip
运行:./consul agent -dev -ui -node=consul-dev -client=192.168.0.124
这里没做集群了,生产环境再做考虑。访问一下http://192.168.0.124:8500,可以访问说明安装成功。
三、Registrator部分
Docker服务中进程间通信通过/var/run/docker.sock实现,默认服务不提供监听端口,因此使用docker remote api 需要手动绑定端口。vim /etc/systemd/system/docker.service
修改
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
以上红色部分为新增的。修改后重启一下docker服务。
拉取Registrator的镜像:docker pull gliderlabs/registrator:latest
运行:docker run -d --name=registrator --net=host --volume=/var/run/docker.sock:/tmp/docker.sock gliderlabs/registrator:latest consul://192.168.0.124:8500
再访问http://192.168.0.124:8500,可以看到services中已经有了docker中全部的服务地址。服务的命名规则是运行的容器的image的名字+“-”+端口,所以在每次运行镜像之前最好对镜像重命名一个与业务相关的名字。
相关文章推荐
- Ocelot + Consul + Registrator 基于Docker 实现服务发现、服务自动注册
- docker基于consule和registrator实现服务的发现和注册
- 基于Consul+Registrator+Nginx实现容器服务自动发现的集群框架 推荐
- 基于 Consul 实现 MagicOnion(GRpc) 服务注册与发现
- docker深入2-基于 swarm mode 的服务发现和注册
- docker深入2-使用registrator和consul-template自动注册和变更服务
- 简单RPC框架-基于Consul的服务注册与发现
- 简单RPC框架-基于Consul的服务注册与发现
- Docker集群实验环境布署--swarm【3 注册服务监控与自动发现组件--consul】
- 简单RPC框架-基于Consul的服务注册与发现
- 服务注册发现consul之四: 分布式锁之四:基于Consul的KV存储和分布式信号量实现分布式锁
- 基于etcd+confd通过nginx对docker服务混合注册发现详解 推荐
- [转载]微服务注册发现集群搭建——Registrator + Consul + Consul-template + nginx
- 基于Docker的负载均衡和服务发现
- 【Docker】基于docker+etcd+confd + haproxy构建高可用、自发现的web服务
- 使用Spring Cloud Consul实现服务的注册和发现
- 基于Zookeeper的服务注册与发现
- Consul 服务注册与服务发现
- Spring Cloud构建微服务架构:服务注册与发现(Eureka、Consul)【Dalston版】
- 基于Zookeeper的服务注册与发现