第十一节:基于docker安装服务注册/配置中心Consul

一.  详细步骤

1 创建目录结构

mkdir -p /root/consul/{data,config}

 

2 创建配置文件

(1) 这里采用 .hcl格式的配置文件,因为这种格式支持注释

(2) 配置文件位于 /root/consul/config/consul.hcl

注:下面的 advertise_addr 要换成自己服务的公网IP

# 数据中心名称(建议每个环境使用不同的名称)
datacenter = "dc1"

# 数据存储路径(对应容器内路径)
data_dir = "/consul/data"

# 客户端访问地址(0.0.0.0 允许所有IP访问)
client_addr = "0.0.0.0"

# UI配置
ui_config {
  enabled = true     # 启用 Web UI
}

# 网络配置
bind_addr = "0.0.0.0"    # 绑定地址(0.0.0.0 监听所有接口)
advertise_addr = "60.205.120.xxx"  # 对外广播地址(使用您的公网 IP)

# 日志配置(生产环境使用 WARN)
log_level = "INFO"  # 可选值:TRACE, DEBUG, INFO, WARN, ERR

# 集群配置
bootstrap_expect = 1  # 预期节点数为 1(单节点模式)
server = true         # 以服务器模式运行

# 端口配置
ports {
  http = 8500         # HTTP API 和 Web UI 端口
  dns = 8600          # DNS 服务端口 
  server = 8300       # 服务器间 RPC 通信端口 
  serf_lan = 8301     # LAN Gossip 协议端口
  serf_wan = 8302     # WAN Gossip 协议端口
}





# ======================
# 安全配置(可选)
# ======================

# 加密通信(使用 consul keygen 生成)
# encrypt = "qX9IqC0QrXd1QbWm3p0z7g=="

# ACL 访问控制(生产环境推荐启用)
# acl {
#   enabled = true
#   default_policy = "deny"
#   tokens {
#     initial_management = "your-strong-token-here"
#   }
# }

# ======================
# 性能调优(可选)
# ======================

# 性能模式(适用于生产环境)
# performance {
#   raft_multiplier = 1
# }

# 连接限制
# limits {
#   http_max_conns_per_client = 200
# }

 

3 创建容器 

docker run -d \
  --name=ypf_consul \
  -p 8500:8500 \
  -p 8600:8600/udp \
  -p 8300:8300 \
  -p 8301:8301 \
  -p 8302:8302 \
  -v /root/consul/data:/consul/data \
  -v /root/consul/config:/consul/config \
  consul agent -node=consul-server-1 -config-dir=/consul/config

 

4 访问

  http://xxxx:8500  为后台UI管理界面

 

 

 

 

 

 

 

!

  • 作       者 : Yaopengfei(姚鹏飞)
  • 博客地址 : http://www.cnblogs.com/yaopengfei/
  • 声     明1 : 如有错误,欢迎讨论,请勿谩骂^_^。
  • 声     明2 : 原创博客请在转载时保留原文链接或在文章开头加上本人博客地址,否则保留追究法律责任的权利。
 
posted @ 2025-06-04 08:17  Yaopengfei  阅读(88)  评论(1)    收藏  举报