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
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
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.
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.