paint-brush
Por que você não precisa do Linux para desenvolver em PHPpor@alexkochnev
1,212 leituras
1,212 leituras

Por que você não precisa do Linux para desenvolver em PHP

por Alexander Kochnev4m2023/06/02
Read on Terminal Reader

Muito longo; Para ler

Windows Subsystem for Linux 2 (WSL2) é uma camada de compatibilidade fornecida pela Microsoft. O WSL2 permite que você execute uma distribuição Linux completa nativamente em sua máquina Windows. Os desenvolvedores podem aproveitar recursos de depuração poderosos diretamente de seus IDEs do Windows. Laravel Sail é uma interface de linha de comando (CLI) leve para Laravel que simplifica a configuração de ambientes de desenvolvimento locais.
featured image - Por que você não precisa do Linux para desenvolver em PHP
Alexander Kochnev HackerNoon profile picture
0-item
1-item
2-item

Desenvolvedores que usam máquinas Windows historicamente enfrentaram desafios quando se trata de desenvolvimento PHP devido à compatibilidade da plataforma com certas ferramentas e estruturas. Mas e se você for um cara do Windows? Com a introdução do Windows Subsystem for Linux 2 (WSL2), o desenvolvimento PHP no Windows tornou-se mais contínuo e eficiente. Neste artigo, exploraremos o que é o WSL2, por que é fácil usá-lo para desenvolvimento em PHP e como configurar um projeto PHP com o Laravel Sail no WSL2.


O que é WSL2?

WSL2 é uma camada de compatibilidade fornecida pela Microsoft que permite executar uma distribuição Linux completa nativamente em sua máquina Windows. Ao contrário de seu antecessor, o WSL2 utiliza uma tecnologia de virtualização leve, que oferece melhor desempenho e compatibilidade com vários aplicativos e ferramentas do Linux. Ele permite que os desenvolvedores aproveitem o poder das ferramentas e ambientes Linux enquanto trabalham no familiar ecossistema do Windows. Em palavras simples, você apenas tem o Ubuntu instalado e rodando em sua máquina Windows.


Vantagens do WSL2

  1. Integração perfeita: com WSL2, você pode executar distribuições Linux como Ubuntu, Debian ou CentOS diretamente em sua máquina Windows. Essa integração garante que você tenha acesso ao terminal Linux e ao gerenciador de pacotes, permitindo que você trabalhe com PHP e suas ferramentas associadas sem esforço.


  2. Ambiente compatível: WSL2 fornece um ambiente compatível para desenvolvimento PHP. Você pode instalar PHP, Composer e outras dependências necessárias da mesma forma que faria em um sistema Linux. Isso garante a consistência entre os ambientes de desenvolvimento, facilitando a colaboração com outros desenvolvedores que trabalham no Linux ou macOS.


  3. Recursos de depuração aprimorados: WSL2 oferece suporte a ferramentas populares de depuração de PHP, como Xdebug, perfeitamente. Os desenvolvedores podem aproveitar os poderosos recursos de depuração diretamente de seus IDEs do Windows enquanto executam o código PHP no ambiente Linux. Essa integração garante uma experiência de depuração consistente e simplifica o processo de solução de problemas.


Instalação do WSL2

Agora você pode instalar tudo o que precisa para executar o WSL com um único comando. Abra o PowerShell ou o prompt de comando do Windows no modo de administrador clicando com o botão direito do mouse e selecionando "Executar como administrador", digite o comando wsl --install e reinicie a máquina.

 wsl --install


Este comando habilitará os recursos necessários para executar o WSL e instalar a distribuição Ubuntu do Linux. Após a instalação, você pode simplesmente abrir o CMD e digitar wsl , ele iniciará automaticamente o Ubuntu e você poderá executar comandos do Linux.


instalação PHP

  1. Atualize os pacotes do Ubuntu.
 sudo apt-get update


  1. Instale o PHP 8.1.
 sudo apt-get install -y php8.1-cli php8.1-common php8.1-mysql php8.1-zip php8.1-gd php8.1-mbstring php8.1-curl php8.1-xml php8.1-bcmath


  1. Instale o compositor.
 curl -sS https://getcomposer.org/installer -o composer-setup.php sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer


Isso é tudo para a parte de instalação. Agora você pode desenvolver aplicativos em seu novo Ubuntu. No entanto, se você trabalha com Laravel, gostaria de mostrar como é fácil implantar vários projetos em seu computador usando o Docker e o Laravel Sail.


Parte bônus: Laravel Sail

Laravel Sail é uma interface de linha de comando (CLI) leve para Laravel que simplifica a configuração de ambientes de desenvolvimento locais. Ele aproveita o Docker para criar um ambiente unificado, portátil e consistente para projetos Laravel. O Sail agiliza o processo de configuração, permitindo que você se concentre em escrever código em vez de lidar com procedimentos complexos de configuração. A principal vantagem é que você não precisa se preocupar em criar seus próprios arquivos docker-compose e trabalhar com imagens, o Sail fará tudo por você. Aqui está como você pode usar o Sail para o seu projeto:


  1. Instale o Laravel no seu sistema Ubuntu.
 composer global require laravel/installer


  1. Crie um projeto Laravel ou simplesmente clone o existente.
 laravel new my-project cd my-project


  1. Configure o Laravel Sail para o projeto.
 php artisan sail:install

Ele criará docker-compose.yml que terá NGINX, MySQL, Redis e outras ferramentas realmente úteis para o desenvolvimento.


  1. Comece seu projeto.
 ./vendor/bin/sail up

Este comando ativará os contêineres do Docker e seu aplicativo estará ativo!

Você pode alterar as portas do seu aplicativo no arquivo .env; no entanto, deve estar disponível com localhost:80 por padrão.


Graças ao WSL2 e ao Laravel Sail, o desenvolvimento PHP em máquinas Windows tornou-se significativamente mais fácil e acessível. O WSL2 fornece integração perfeita de distribuições Linux no ambiente Windows, enquanto o Laravel Sail simplifica a instalação e configuração de ambientes de desenvolvimento locais para projetos Laravel. Seguindo as etapas descritas neste artigo, você pode aproveitar o WSL2 e o Laravel Sail para desfrutar de uma experiência de desenvolvimento PHP confortável em sua máquina Windows sem a necessidade de mudar para o Ubuntu ou outras distribuições Linux.