Welcome to Elvin's blog

docker运行haproxy 自动生成配置

根据参数,shell自动生成haproxy配置
为方便部署,特意做了个haproxy镜像

#Haproxy run as docker

#运行实例 run

#!/bin/bash

#docker run
Name=haproxy-test
docker rm -f ${Name}
docker run -dit --net=host \
--restart=always --name ${Name} -h ${Name} \
-e Stats_set="admin:admin 1081 /stats" \
-e Listen_1="k8s tcp 6445 6443" \
-e IPlist_1="172.16.11.141 172.16.11.142 172.16.11.143" \
alivv/haproxy

#查看 check

#docker check
docker ps -l
docker logs  ${Name}

#Check the config
docker exec -it ${Name} cat /usr/local/etc/haproxy/haproxy.cfg

#delete
#docker rm -f ${Name}

#参数 var

#状态页设置
# 用户:密码  端口  url后缀
Stats_set="admin:admin1 1080 /stats"

#代理设置
# Listen_1=代理名称、模式(tcp|http)、端口、被代理端口
# IPlist_1=被代理ip地址列表
Listen_1="k8s tcp 6445 6443"
IPlist_1="172.16.11.141 172.16.11.142 172.16.11.143"

生成配置如下
##########
listen k8s
    bind :6445
    mode tcp
    option tcplog
    server k8s-1 172.16.11.141:6443 check inter 3000 rise 2 fall 3
    server k8s-2 172.16.11.142:6443 check inter 3000 rise 2 fall 3
    server k8s-3 172.16.11.143:6443 check inter 3000 rise 2 fall 3


#可设置多个代理
Listen_1 、IPlist_1
Listen_2 、IPlist_2
……

git地址 https://gitee.com/alivv/docker/tree/master/happroxy

posted @ 2019-11-04 22:00  blog-elvin-vip  阅读(1072)  评论(0编辑  收藏  举报