Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

Erro ao acessar porta 8080

Olá, estou tentando colocar em prática o que eu aprendi até o momento sobre Docker e gostaria que algum professor desse uma olhada nos Dockerfiles e no docker-compose que escrevi. Segue link dos arquivos no GitHub

5 respostas

Estou subindo os containers, mas não estou conseguindo acessar o localhost:8080 que eu deixe para o php. Quando acesso o container e executado o comando php -S localhost:8080 -t public aparece a seguinte mensagem [Sat Dec 5 18:31:13 2020] Failed to listen on localhost:8080 (reason: Address in use).

Olá, Francisco. Beleza?

Você está tentando executar o comando php -S localhost:8080 -t public diretamente no shell do container, depois que ele iniciou?

No dockerfile que fiz do php eu coloquei um entrypoint ENTRYPOINT php -S localhost:8080 -t public quanto eu subo o container não funciona. Então eu acesso o shell do container e tento executar o comando php -S localhost:8080 -t public onde aparece o erro informado anteriormente.

solução!

Olá Francisco, beleza?

O que acontece é que, dentro do container, você está usando localhost:8080, mas você vai acessar a aplicação usando o seu host, correto?

Quando você expõe a porta 8080 do container e faz o link com a porta 8080 do host, você vai redirecionar as conexões que vierem do localhost:8080 do host para a porta 8080 do container. Mas o localhost do host não é o mesmo localhost do container. São interfaces virtuais de rede diferentes.

Então testa usar php -S 0.0.0.0:8080 -t public que ele vai aceitar conexões na porta 8080 vindo de qualquer IP. Foi assim que eu fiz aqui pra testar e funcionou.

Manda aqui o resultado?

Funcionou.