<aside> <img src="/icons/light-bulb_gray.svg" alt="/icons/light-bulb_gray.svg" width="40px" /> English version
</aside>
Quem já não perdeu algumas horas, até dias, configurando o computador para desenvolver com PHP?
https://github.com/opencodeco/phpctl
Nos primórdios, muitas pessoas recorriam a soluções como LAMP, WAMP, XAMPP etc. Pra quem não é dessa época, eram conjuntos de ferramentas que vinham com o Apache, o MySQL e o PHP, e você instalava como um programa qualquer, com o famoso “Next, next, next…”.
Com o tempo as pessoas deixaram de usar esse tipo de ferramenta, ainda mais com o advento do web-server embutido (built-in) do PHP, então a gente não precisa mais se preocupar em configurar um web-server como o Apache ou o Nginx.
Além disso, outra proposta que chegou e veio pra ficar foi o uso de containers, muito popularizado pela ferramenta Docker (mas existem outras runtimes).
O uso de containers foi mesmo revolucionário, muito conhecido por acabar com aquela famigerada frase “na minha funciona”, afinal, a grande proposta do uso de containers é uniformizar a execução e distribuição de programas.
Hoje em dia, assim como o Git, é uma ferramenta indispensável no arsenal de qualquer desenvolvedor e não seria diferente para os desenvolvedores PHP.
Pensando nisso, nessa facilidade que os containers trazem, seu uso ser tão bem adotado entre as pessoas e depois de tanto lutar com diversas formas de configurar ambientes de desenvolvimento PHP, passado por phpbrew, asdf ou até tentando me virar com o brew e o apt direto, resolvi criar a phpctl
.
https://github.com/opencodeco/phpctl
A phpctl é toda baseda em containers, ou seja, você só precisa do Docker instalado na sua máquina e do Git pra instalar fazendo um clone do repositório. Quando você executa um comando da phpctl
ela roda um container todo configurado pra entender seu diretório atual e usando uma imagem com diversas extensões em comum pré-instaladas.
A primeira linha de output é o nome da imagem que o container usará. É bem útil pra você ter certeza de onde seu comando vai rodar.
Criei um script instalador que faz um clone do repositório e que também já cria links dos binários da phpctl para o seu diretório /usr/local/bin
, assim você já vai ter acesso à comandos, como php
e phpctl
(entre vários outros) direto do terminal de qualquer lugar:
sh <(wget -qO- <https://raw.githubusercontent.com/opencodeco/phpctl/main/installer.sh>)
Assim que você instalar a phpctl, você já vai ter também o composer
, que é o gerenciador de pacotes adotado pela comunidade PHP.
A lista de comandos é extensa, recomendo você dar uma olhada no README.md do projeto ou usar o comando help
para ter uma lista dos possíveis comandos e uma breve descrição de cada um deles.