我在Doccker容器中使用Nginx来托管我的应用程序
我正在尝试将Nginx配置为将来自/.well-known/目录的流量代理到另一个处理letsencrypt进程以设置&更新SSL证书,但我不需要该容器一直在运行,只有在尝试续订证书时才会运行。
我的想法是将proxy_pass用于特定于目录的流量,直到leysencrypt容器,但由于它并不总是在运行,因此Nginx进程退出抱怨上游不可用。
有没有办法配置Nginx不检查proxy_pass设置的上游状态?
这是当前配置,如果它有用......
server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;
server_name domain.com;
root /var/www/html/web;
location / {
return 301 https://$host$request_uri;
}
location ^~ /.well-known/ {
proxy_pass http://letsencrypt/.well-known/;
}
}
我想我可以使用应用程序转发文件,但这感觉很笨重。我宁愿在Nginx中配置它。
答案 0 :(得分:0)
location ^~ /.well-known/ {
resolver 127.0.0.1;
set $upstream letsencrypt;
proxy_pass http://$upstream/.well-known/; # use variables to make nginx startable
}