redis를 사용하는 python webapp의로드 밸런서로 HAProxy를 사용하려고합니다. 나는 도커 실행 명령을 docker-compose.yml을 사용하여 docker-compose로 전환하는 중입니다.하지만 문제가 있습니다.Docker-Compose HAProxy missing frontend
다음은 현재 작동중인 "도커 실행"명령입니다.
global
log 127.0.0.1 local0
log 127.0.0.1 local1 notice
log-send-hostname
maxconn 4096
pidfile /var/run/haproxy.pid
user haproxy
group haproxy
daemon
stats socket /var/run/haproxy.stats level admin
ssl-default-bind-options no-sslv3
ssl-default-bind-ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:AES128-GCM-SHA256:AES128-SHA256:AES128-SHA:AES256-GCM-SHA384:AES256-SHA256:AES256-SHA:DHE-DSS-AES128-SHA:DES-CBC3-SHA
defaults
balance roundrobin
log global
mode http
option redispatch
option httplog
option dontlognull
option forwardfor
timeout connect 5000
timeout client 50000
timeout server 50000
listen stats
bind :1936
mode http
stats enable
timeout connect 10s
timeout client 1m
timeout server 1m
stats hide-version
stats realm Haproxy\ Statistics
stats uri/
stats auth stats:stats
frontend default_frontend
bind :80
bind :443 ssl crt /certs/
reqadd X-Forwarded-Proto:\ https
maxconn 4096
defcon 1
default_backend default_service
: 여기 docker run --name sdnapi-redis -v /opt/redis:/data -p 6379:6379 -d redis redis-server --appendonly yes
docker run -d --name sdnapi1 --link sdnapi-redis:redis mycomp/sdnapi
docker run -d --name sdnapi2 --link sdnapi-redis:redis mycomp/sdnapi
docker run -d --name sdnapilb -p 80:80 -p 443:443 -p 1936:1936 -e DEFAULT_SSL_CERT="$(awk 1 ORS='\\n' ./certs/cert.pem)" -v /certs/:/certs/ --link sdnapi1:sdnapi1 --link sdnapi2:sdnapi2 dockercloud/haproxy
이 같은 기능
version: '2'
services:
sdnapi:
image: mycomp/sdnapi
links:
- sdnapi-redis:redis
sdnapilb:
image: dockercloud/haproxy:1.2.1
environment:
- DEFAULT_SSL_CERT
volumes:
- /certs/:/certs/
ports:
- "80:80"
- "443:443"
- "1936:1936"
links:
- sdnapi:sdnapi
sdnapi-redis:
image: redis
volumes:
- /opt/redis:/data
ports:
- "6379:6379"
command: redis-server --appendonly yes
나는 고정 표시기 실행 명령을 실행 복제해야 내 고정 표시기 - compose.yml이다, 이것은 sdnapilb 로그입니다
docker-compose.yml을 "docker-upose -d"와 함께 실행하면 ... 프론트 엔드가 손실됩니다. 섹션.
global
log 127.0.0.1 local0
log 127.0.0.1 local1 notice
log-send-hostname
maxconn 4096
pidfile /var/run/haproxy.pid
user haproxy
group haproxy
daemon
stats socket /var/run/haproxy.stats level admin
ssl-default-bind-options no-sslv3
ssl-default-bind-ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:AES128-GCM-SHA256:AES128-SHA256:AES128-SHA:AES256-GCM-SHA384:AES256-SHA256:AES256-SHA:DHE-DSS-AES128-SHA:DES-CBC3-SHA
defaults
balance roundrobin
log global
mode http
option redispatch
option httplog
option dontlognull
option forwardfor
timeout connect 5000
timeout client 50000
timeout server 50000
listen stats
bind :1936
mode http
stats enable
timeout connect 10s
timeout client 1m
timeout server 1m
stats hide-version
stats realm Haproxy\ Statistics
stats uri/
stats auth stats:stats
설정에 문제가 있습니까? 확장 기능을 사용하기 위해 도커 - 작성 기능을 사용하고 싶습니다.
-d없이 실행하면 터미널에서 출력을 볼 수 있습니다. 디버깅에 도움이 될 것입니다. 그러면 질문과 함께 오류를 게시하십시오. – ExoticChimp
아이디어를 제공해 주셔서 감사합니다. 나는 그것을 시도했지만 프론트 엔드 섹션이없는 haproxy.cfg 출력 외에 로그에는 그다지 많은 것이 없다. 통계 페이지 (1936 포트)는 정상적으로 작동하지만 프론트 엔드가 없기 때문에 포트 80 또는 443에 노출이 없습니다. – truncj