1. 问题:先安装 nginx,反向代理到kuboard端口,但是此时kuboard服务还未安装,nginx 启动失败
2. 原因: nginx启动会检查后端的kuboard端口的可用性,如果不可用会启动失败
3. 解决:使用 set 和 resolver 结合(本场景是k8s )
server {
listen 8080
server_name localhost;
access_log /dev/null;
error_log /dev/null;
resolver kube-dns.kube-system.svc.cluster.local valid=5s;
set $kuboard_target "http://kuboard.default.svc.cluster.local:8080";
location / {
proxy_read_timeout 1800s;
proxy_pass $kuboard_target;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}