Ambiente de Desenvolvimento PHP com o Docker Compose

Docker

Docker Compose é uma ferramenta para execução de aplicativos docker multi-containers o que nos ajuda muito a iniciar um ambiente inteiro com um comando somente.

Neste post vamos utilizar o Docker Compose para configurar um ambiente de desenvolvimento básico, com o PHP, Apache e MySQL.Vamos utilizar dois containers Docker, um para o PHP e Apache e outro para o banco de dados MySQL. Vamos utilizar imagens oficias do Docker Hub.

Primeiramente vamos criar o container para o servidor WEB. Para isso dentro de uma pasta vamos criar um arquivo chamado Dockerfile contendo as seguintes linhas:


Nos utilizamos uma imagem do repositório oficial, este vem com o PHP 5.6 e o apache. Além disso utilizamos um comando para executar (RUN) a instalação da extensão mysqli. Por hora vamos instalar somente esta extensão, caso queira instalar mais extensões de uma olhada na documentação da imagem que foi utilizada.

O próximo passo é criar um arquivo chamado docker-compose.yml onde teremos as configurações de nossos dois containers. Vamos inserir as seguintes linhas nele:

O próximo passo agora é criar a pasta www/ e um arquivo com o nome index.php dentro da pasta www/ com o seguinte código:

Agora vamos colocar para rodar com o comando docker-compose up. Com este comando será mostrado em um modo verbose, ou seja, cuspindo todas as informações no terminal. Caso queira rodar em segundo plano bastar utilizar o seguinte comando: docker-compose up -d

Este post é o basico do que se pode fazer com o docker, mais com esse básico já podemos ter nosso ambiente de desenvolvimento rodando rapidamente e totalmente independente de nossa maquina.