Fala devs, vamos de segunda parte?
Este artigo faz parte de uma série onde escrevo sobre docker e mostro como é simples configurar um ambiente de desenvolvimento mínimo utilizando containers.
Série completa:
- Conceitos básicos, caso de uso, vantagens e instalação
- Criação de um ambiente PHP
- Servidor web e banco de dados
Dockerfile:
É neste arquivo que iremos definir a imagem base que será utilizada no ambiente, instalar as dependências e realizar todas as configurações necessárias. Portanto, crie um arquivo chamado Dockerfile
na raiz do seu diretório de trabalho com o seguinte conteúdo:
Nele, estamos declarando a utilização da imagem php:7.1-fpm
e a instalação da dependência pdo_mysql
, que será necessária na terceira parte da série.
Docker Compose:
Crie um arquivo chamado docker-compose.yml
na raiz do seu diretório de trabalho com o seguinte conteúdo:
Este arquivo contém a “receita” do nosso ambiente e é nele que devemos declarar todos os nossos containers com os respectivos atributos, relacionamentos, dependências e configurações necessários.
No exemplo acima, estamos criando um container de PHP que utilizará como imagem base o php:7.1-fpm
, já declarado no arquivo Dockerfile
, além disso, podemos observar que é realizado um mapeamento do diretório de trabalho atual para o /var/www/
do container e que este, estará disponível através da porta 9000
, onde o servidor embutido do PHP é executado por padrão, como podemos observar na tag command
.
Para fins didáticos, crie um diretório chamadopublic
e dentro dele crie um arquivo chamado index.php
com o seguinte conteúdo:
Executando o(s) container(s):
Para “subir” containers através do Docker Compose execute o seguinte comando:
docker-compose up -d
Se tudo deu certo, você pode acessar o container através do browser no seguinte endereço:
http://localhost:9000/
Comandos úteis:
Listar:
docker-ps
(containers em execução) e docker-ps -a
(todos os containers)
Parar a execução:
docker-stop [container_name]
Executar um comando:
docker exec -it [container_name] [command]
Como existem muitos comandos, necessidades e possibilidades, considero extremamente válido acessar a documentação de comandos do Docker e Docker Compose.
Chegamos ao final da segunda parte da série “Criando um ambiente de desenvolvimento PHP mínimo com Docker” e vocês podem acessar através deste link a terceira e última parte da série!
Obrigado e forte abraço!
Comigo o docker retorna um erro que a pasta public/ não existe. O que pode estar errado???
Olá, vc deve criar o diretório
public/
na raiz do seu projeto… Veja nesse repositório exemplo que foi utilizado no tutorial e compare com a estrutura de diretórios do seu projeto. Espero ter ajudado, forte abraço!Valeu!!! Obrigado me ajudou aqui com os estudos. Sucesso!