Dev (Back & Front)ARTIGO

Criando um ambiente de desenvolvimento PHP mínimo com Docker – Parte 2

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.

Criando um ambiente de desenvolvimento PHP mínimo com Docker – Parte 2
Imagem: Gustavo Fraga

Fala devs, vamos de segunda parte?

Este artigo faz parte de uma série onde escrevo sobre dockerDocker46 conteúdosE o Docker Swarm? Contextos e motivadores diáriosDevSecOps · ago 2024Automatizando o ambiente de desenvolvimento e testes com DockerDevSecOps · mai 2019MySQL + Adminer + Docker Compose: montando rapidamente um ambiente para usoData · abr 2019Ver tudo em DevSecOps e mostro como é simples configurar um ambiente de desenvolvimentoLeia tambémAutomatizando o ambiente de desenvolvimento e testes com DockerDevSecOps · mai 2019 mínimo utilizando containers.

Série completa:

  1. Conceitos básicos, caso de uso, vantagens e instalação
  2. Criação de um ambiente PHP
  3. 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:

php
FROM php:7.1-fpm
RUN docker-php-ext-install pdo_mysql

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 ComposeLeia tambémMySQL + Adminer + Docker Compose: montando rapidamente um ambiente para usoData · abr 2019:

Crie um arquivo chamado docker-compose.yml na raiz do seu diretório de trabalho com o seguinte conteúdo:

php
version: "3.7" 
services:
  php:
    build:
      context: .
    image: phpdocker
    container_name: php
    ports:
      - "9000:9000"
    volumes:
      - ".:/var/www/html/" 
    command: php -S 0.0.0.0:9000 -t public/

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:

php
<?php
phpinfo();

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/

Software Developer, graduado em Análise e Desenvolvimento de Sistemas pela FADERGS, iMasters Certified Professional, evangelista PHP e membro da comunidade de desenvolvedores PHP do Rio Grande do Sul - PHPRS.

Ver perfil