Nginx com dnsmasq 'não pôde ser resolvido (5: Operação recusada)'

2

Estou tentando montar um site de django usando docker, nginx e uwsgi: Eu tenho um contêiner docker nginx trabalhando como um proxy reverso (chamado ceca-nginx-proxy) e outro contêiner nginx (ceca-nginx) que se comunica com um contêiner uwsgi (ceca-uwsgi), eu posso conectar usando curl (com curl --resolve http://test.ceca.com http://172.17.0.7 ) para o container ceca-nginx e recebo o site do django rodando no container ceca-uwsgi, o problema é quando eu quero pegar o site via ceca-nginx-proxy: estou recebendo este erro no meu ceca-nginx-proxy log de erros de proxy:

ceca-nginx could not be resolved (5: Operation refused), client: 172.17.0.1, server: *.ceca.com, request: "GET / HTTP/1.1", host: "172.17.0.8"

  • 172.17.0.1 é o docker ip atribuído
  • *. ceca.com é o server_name definido na configuração nginx do ceca-nginx-proxy
  • 172.17.0.8 é o ip do ceca-nginx-proxy
  • O bloco de servidor do proxy reverso ceca-nginx-proxy é:

    server {
        listen 80;
        server_name *.ceca.com;
        error_log   /tmp/proxy_error_nginx.log warn;
        access_log  /tmp/proxy_access_nginx.log;
    
        location / {
            set $example ceca-nginx;
            resolver 127.0.0.1;
            proxy_pass http://$example;
        }
    } 
    

    E estou executando o dnsmasq na mesma máquina para resolver nomes de host em / etc / hosts (nomes de host de contêineres vinculados do docker) assim:

    dnsmasq -q -8 /tmp/dnsmasq.log --port 53 -R -u root
    

    Para o que eu vejo no dnsmasq.log, o nome do host está resolvendo ok [1], mas o nginx está reclamando e retornando uma página "502 Bad Gateway". Se alguém puder me ajudar com isso, serei eternamente grato e comprarei muita cerveja e fernet se nos conhecermos.

    [1]
    
    Jun  6 21:39:47 dnsmasq[321]: query[A] ceca-nginx from 127.0.0.1
    Jun  6 21:39:48 dnsmasq[321]: /etc/hosts ceca-nginx is 172.17.0.7
    Jun  6 21:39:48 dnsmasq[321]: query[AAAA] ceca-nginx from 127.0.0.1
    
por Pablo K 06.06.2016 / 23:46

0 respostas