#拉取镜像
docker pull haproxy:1.9.3
#创建目录,用于存放配置文件
mkdir /usr/local/haproxy
#创建容器
docker create --name haproxy --net host -v /usr/local/haproxy:/usr/local/etc/haproxy haproxy:1.9.3
配置文件
#创建文件
vim /usr/local/haproxy/haproxy.cfg
#输入如下内容
global
log 127.0.0.1 local2
maxconn 4000
daemon
defaults
mode http
log global
option httplog
option dontlognull
option http-server-close
option forwardfor except 127.0.0.0/8
option redispatch
retries 3
timeout http-request 10s
timeout queue 1m
timeout connect 10s
timeout client 1m
timeout server 1m
timeout http-keep-alive 10s
timeout check 10s
maxconn 3000
# 管理界面的监听, 名字可以任意修改
listen admin_stats
bind 0.0.0.0:4001
mode http
# 管理页面的路由
stats uri /dbs
stats realm Global\ statistics
# 设置管理页面登录的账号密码
stats auth admin:admin123
# mysql的代理,名字可以任意修改
listen proxy-mysql
bind 0.0.0.0:4002
mode tcp
# 采用的策略是轮循
balance roundrobin
option tcplog
#代理mycat服务
server mycat_1 192.168.253.129:8066 check port 8066 maxconn 2000
server mycat_2 192.168.253.129:8067 check port 8067 maxconn 2000
创建容器
docker create --name haproxy --net host -v /usr/local/haproxy:/usr/local/etc/haproxy haproxy:1.9.3
启动
docker start haproxy
测试管理页面、刚登录进来时需要使用账号密码,在配置文件中设置的信息查看
测试服务端
通过haproxy查询到数据