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

Problema ao tentar acessar container via porta 2000

Boa tarde,

Após a aula eu tentei praticar um pouco criando um Docker file novo:

FROM php:7.2-apache
LABEL AUTHOR="Eddie Lima"
ENV PORT=2000
COPY . /var/www/html
WORKDIR /var/www/html
EXPOSE $PORT

Fiz o build da imagem:

docker build -f php.dockerfile -t eddiecoder/my-php-apache-webapp .

Depois criei o container baseado nessa imagem:

docker run -d -p 8080:2000 eddiecoder/my-php-apache-webapp

O container roda certinho porém não consigo acessar o mesmo pelo browser usando localhost:8080.

Poderiam me dizer se estou fazendo algo errado ?

Grato Edvaldo

2 respostas
solução!

Olá, Edvaldo. Tudo bem?

O problema não é com seu Dockerfile em si, mas com as configurações necessárias para o container do apache. Por padrão, o binário do apache sobe o servidor na porta 80, então não basta que você defina a porta 2000 no Dockerfile, pois quando você tentar acessar essa porta nada estará sendo executado nela.

Não é tão simples alterar a porta padrão que o apache usa, então acho mais interessante que você use a porta 80 mesmo para aprender a usar o Docker. As configurações do Apache são um ponto a se estudar, mas acho que sai do escopo no momento.

Só um ponto a acrescentar é que esse WORKDIR que você está executando não está tendo nenhuma utilidade nesse contexto. Ele seria mais útil se você fosse executar algum comando a partir do diretório passado para ele, mas não é o caso. Então acho que você pode remover.

Então, para resumir, usando a porta correta para acessar o apache e removendo o WORKDIR desnecessário, o Dockerfile ficaria assim:


FROM php:7.2-apache
LABEL AUTHOR="Eddie Lima"
ENV PORT=80
COPY . /var/www/html
EXPOSE $PORT

E para subir o container:

docker run -d -p 8080:80 eddiecoder/my-php-apache-webapp

Assim você deve conseguir acessar a página em http://localhost:8080.

Espero ter ajudado.

Vitor,

Muito obrigado, pelo menos dessa vez não estava fazendo nada de errado :)

abraço

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software