Fala devs, tudo certo?
Hoje estou iniciando uma série de três artigos onde irei escrever sobre docker e mostrar como é simples configurar um ambiente de desenvolvimento mínimo utilizando containers.
Estrutura da série
- Conceitos básicos, caso de uso, vantagens e instalação
- Criação de um ambiente PHP
- Servidor web e banco de dados
O que são containers docker?
São ambientes isolados que são executados como uma virtualização em nível de sistema operacional e utilizam os recursos do kernel linux.
O que é docker?
É uma ferramenta que oferece a camada de abstração necessária para que possamos usar containers nas nossas aplicações de forma transparente.
Quais são as vantagens de utilizar isso?
Considere o seguinte cenário:
A empresa Xamp Ltda era uma organização muito bacana, mas estava com alguns problemas:
- Sempre que a equipe recebia um novo integrante, precisava configurar todo o ambiente de desenvolvimento para o novo colaborador
- Os desenvolvedores estavam perdidos em meio a quantidade de ferramentas, configurações e tecnologias presentes nas suas máquinas de trabalho
- Infelizmente as configurações do ambiente local de desenvolvimento não funcionavam para todos os projetos da equipe
- Os projetos que eram testados neste ambiente, quando enviados para a produção, apresentavam problemas nunca vistos antes pelos desenvolvedores
Containers docker
Um colaborador sugeriu a utilização de containers docker no ambiente de desenvolvimento, alegando que isso resolveria quase todos os problemas da equipe, sendo:
- Como é possível replicar um ambiente docker através de uma “receita” onde constam todas as dependências e configurações, o problema do primeiro item será resolvido facilmente entregando ao novo colaborador a “receita” com as respectivas instruções de uso
- Nada mais será instalado e configurado localmente, pois os desenvolvedores criarão “receitas” específicas para cada necessidade e/ou projeto, resolvendo os problemas descritos nos itens 2 e 3
- Quando a equipe decidir utilizar containers docker em ambiente de produção, deverá replicar o ambiente de desenvolvimento apenas com algumas configurações extras, eliminando o problema descrito no último item, também conhecido como “na minha máquina funciona”
Instalação
Como a instalação possui algumas particularidades que variam de acordo com o sistema operacional que está sendo utilizado, deixarei os links abaixo:
Instruções de instalação do Docker e Docker Compose (será utilizado para gerenciar a nossa “receita”)
Chegamos ao final da primeira parte da série “Criando um ambiente de desenvolvimento PHP mínimo com Docker” e vocês podem acessar através deste link a segunda parte da série!
Obrigado e forte abraço!