【docker集群应用】Docker + consul的容器服务更新与发现

Docker + consul的容器服务更新与发现

Consul-Template

Consul-Template 是一个基于 Consul 的应用,用于自动替换配置文件。它是一个守护进程,能够实时查询 Consul 集群信息,并更新指定模板,生成配置文件。更新完成后,可以选择运行 shell 命令执行更新操作,如重新加载 Nginx。

Consul-Template 可以查询 Consul 中的服务目录、Key、Key-values 等,适合动态创建配置文件,如 Apache/Nginx Proxy Balancers、Haproxy Backends 等。

Consul-Template部署

一、准备 Nginx 模板文件

  1. 在 Consul 服务器上,创建 Nginx 模板文件 /opt/consul/nginx.ctmpl
#定义nginx upstream一个简单模板
upstream http_backend {
  {
  
  {range service "nginx"}}
   server {
  
  {.Address}}:{
  
  {.Port}};
   {
  
  {end}}
}
#定义一个server,监听8000端口,反向代理到upstream
server {
    listen 8000;
    server_name localhost 192.168.80.15;
    access_log /var/log/nginx/xy101.com-access.log;
    index index.html index.php;
    location / {
        proxy_set_header HOST $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header Client-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://http_backend;
    }
}

二、编译安装 Nginx

  1. 安装依赖:
yum -y install pcre-devel zlib-devel gcc gcc-c++ make
  1. 创建 Nginx 用户:
useradd -M -s /sbin/nologin nginx
  1. 解压、编译、安装 Nginx:
tar zxvf nginx-1.12.0.tar.gz -C /opt/
cd /opt/nginx-1.12.0/
./configure --prefix=/usr/local/nginx --user=nginx --group=nginx && make && make install
ln 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值