Conexões HTTP / HTTPS muito lentas no Docker para Mac

5

Estou usando o Docker para Mac v 1.12.3, o problema que estou tendo é que as conexões HTTP e HTTPS são muito lentas. O DNS e o Ping parecem bons, mas o HTTP (S) leva, por exemplo, 5 segundos na imagem do docker, mas 0,05 segundos no host:

Host (MacOS Sierra):
time curl www.google.com
0.05 real 
0.00 user 
0.00 sys

Docker:
time curl www.google.com
real 0m5.615s
user 0m0.010s
sys 0m0.000s

Não consigo ver nenhum motivo para isso ou para qualquer outra pessoa com o mesmo problema.

Alguma idéia?

    
por ant-fx 16.11.2016 / 14:59

1 resposta

4

Eu notei que /etc/resolv.conf tinha 10 entradas de nameserver diferentes (semelhante a 192.168.65.1). Adicionando o DNS do Google antes de qualquer um deles se livrar de todo o atraso.

ATUALIZAÇÃO: Você pode descobrir (como eu fiz) que a mudança através do host debian moby (abaixo), na verdade, não persiste nas reinicializações. Descobri que a v1.12.3 do Docker for Mac agora, no entanto, respeita o sinalizador --dns para o comando run , bem como a propriedade dns em um arquivo de composição. Se você usar o --dns flag, você não precisa modificar nenhum resolv.conf com o flag, ele irá sobrescrever todas as nameserver entradas para você.

Fazer mais pesquisas revelou que eu precisava fazer o login na imagem moby para modificar os padrões. Você pode confirmar isso olhando para o resolv.conf de qualquer uma das imagens que você criou. Se eles não tiverem um DNS conhecido, você precisará seguir as instruções aqui:

link

    
por 29.11.2016 / 22:46

Tags