和 etcd 類似,consul 也是一個高可用的分布式 kv 系統(tǒng)冠摄,并且提供了比 etcd 更豐富的功能绍在,自帶 ui 界面
consul 有客服端模式(client)和服務(wù)端模式(server),在實際的部署中會在每個客戶端機器上部署一個本地 client, server 的數(shù)據(jù)會同步到 client歹垫,服務(wù)直接和本地 client 交互桑滩,有效地減少了網(wǎng)絡(luò)通信
搭建 consul 服務(wù)
version: "3.5"
services:
consul:
hostname: consul
image: consul:1.6.1
deploy:
replicas: 1
restart_policy:
condition: on-failure
# ports:
# - "8500:8500"
# - "8600:8600"
user: root
volumes:
- "/var/docker/consul/data:/consul/data"
environment:
- CONSUL_BOOTSTRAP_EXPECT=1
- CONSUL_CLIENT_LAN_ADDRESS=0.0.0.0
- CONSUL_ENABLE_UI=true
- CONSUL_ENABLE_SERVER=true
networks:
- consulnet
networks:
consulnet:
name: consulnet
部署成功后梧疲,可以通過 http://127.0.0.1:8500/ui/
訪問 consul ui
鏈接
- github consul: https://github.com/hashicorp/consul
- docker consul 鏡像: https://hub.docker.com/_/consul
- docker consul github: https://github.com/hashicorp/docker-consul
- 參考代碼: https://github.com/hpifu/docker-consul
- docker consul 集群參考: https://github.com/bitnami/bitnami-docker-consul/blob/master/docker-compose-cluster.yml
轉(zhuǎn)載請注明出處
本文鏈接:https://tech.hatlonely.com/article/63