我有一个简单的反向代理nginx.conf:
constructor(props) {
super(props);
this.state = {
currentTime: new Date().toLocaleTimeString(),
};
}
events {
worker_connections 1024;
}
http {
gzip on;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host:$server_port
server {
listen 80;
server_name app.local;
location / {
proxy_pass http://localhost:3000;
}
}
}
是一个docker swarm(1.13)服务节点应用。当我请求localhost:3000
时,一切都很好。但是每当我更新服务(重新部署容器)时:
app.local
Nginx会认为某些事情是错误的(暂时),并且在30秒左右的时间内没有响应docker service update --force app
的请求。这一切都在CentOS 7服务器上运行。
我已将docker服务配置为通过滚动更新进行重新部署,因此从外部看,3000似乎永远不会出现故障。我可以不断请求app.local
,绕过nginx而不会出现任何可疑的停机时间。
Nginx未在docker容器中运行。我必须缺少某种配置选项。