1
resposta

Site teste não encontrado

Olá, rodei o comando docker run -d -P dockersamples/static-site e consegui rodar o container com sucesso, ao verificar as portas tive o retorno: 443/tcp -> 0.0.0.0:49159 80/tcp -> 0.0.0.0:49160

Então ao tentar acessar o http://localhost:49160/ retorna que não foi possível acessar esse site (ERR_CONNECTION_REFUSED).

Estou usando ambiente windows e não estou usando nenhuma virtualização, mas para garantir tentei rodar o docker-machine ip e retorna o seguinte: 'docker-machine' não é reconhecido como um comando interno ou externo, um programa operável ou um arquivo em lotes.

Como devo prosseguir?

1 resposta

No seu comando você também realizou o bind definido das portas? Isto é, sem ser de forma aleatória (argumento -p ao invés de -P).

É basicamente você associar a porta da sua aplicação que está rodando no seu contâiner com a porta que você irá acessar a partir da sua máquina (localhost). Pode ser que sua aplicação esteja rodando no contâiner na porta 80 e você esteja acessando localmente através da porta 49160.

Tem mais detalhes sobre isso na documentação da docker: https://docs.docker.com/config/containers/container-networking/

Além disso, acredito que seja necessário acessar a sua aplicação através do IP que direcione para o contâiner mesmo e não para o localhost. Vale verificar a instalação do docker-machine para ter acesso ao IP dele.

Talvez com as soluções do SO te ajudem a encontrar o IP do contâiner sem o docker-machine: https://stackoverflow.com/questions/17157721/how-to-get-a-docker-containers-ip-address-from-the-host