docker-compose部署haproxy對nginx、http的負載均衡

安裝docker-compose

官網上下載docker-compose-Linux-x86_64-1.22.0

chmod +x docker-compose-Linux-x86_64-1.22.0
ln -s docker-compose-Linux-x86_64-1.22.0 docker-compose  # 以便實現後續更新

書寫docker-compose文件

mkdir compose
cd compose/
[root@foundation11 compose]# cat docker-compose.yml
apache:
    image: rhel7:v1
    expose:
        - 80
    volumes:
        - ./web:/var/www/html  # 首頁文件

nginx:
    image: nginx
    expose:
        - 80

haproxy:
    image: haproxy
    volumes:
        - ./haproxy:/usr/local/etc/haproxy # haproxy的配置文件路徑
    links:
        - apache
        - nginx
    ports:
        - "8080:80"  # 端口轉換
    expose:
        - 80   # haproxy對外暴露的端口

編寫haproxy的配置文件

[root@foundation11 compose]# cd haproxy/
[root@foundation11 haproxy]# cat haproxy.cfg 
global
    log 127.0.0.1 local0
    log 127.0.0.1 local1 notice
defaults
    log global
    mode http
    option httplog
    option dontlognull
    timeout connect 5000ms
    timeout client 50000ms
    timeout server 50000ms
    stats uri /status
frontend balancer
    bind 0.0.0.0:80
    default_backend web_backends
backend web_backends
    balance roundrobin
    server web1 apache:80 check
    server web2 nginx:80 check
[root@foundation11 compose]# docker-compose up # 只能在此路徑下執行,需要讀取docker-compose.yml文件

瀏覽器輸入:172.25.254.11
這裏寫圖片描述
這裏寫圖片描述
也可以查看後端健康狀態
這裏寫圖片描述
所有瀏覽器的操作都會在shell上輸出
這裏寫圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章