Laravel é um framework de código aberto para a construção de aplicativos web PHP escaláveis. É um favorito entre muitos desenvolvedores devido aos seus módulos fáceis de usar para autenticação, gerenciamento de dependência, armazenamento de sessão e cache, roteamento e muito mais.

Laravel Forge simplifica a implantação e configuração de aplicativos Laravel, automatizando o provisionamento, instalação e manutenção de software e a implantação do servidor. Ele também possui recursos avançados de segurança como firewalls e autenticações Secure Socket Shell (SSH).

Este artigo irá guiá-lo através de como o Laravel Forge funciona, suas principais características e opções de implantação, e como ele se compara com a Kinsta.

Como e por que você deve usar Laravel Forge

O Laravel Forge atua como o gerenciador do seu servidor, permitindo que você instale servidores PHP, servidores Nginx, bancos de dados MySQL e quaisquer outras dependências sem precisar instalá-las manualmente. Isso ajuda a enviar código mais rapidamente, tornando as alterações no servidor em nuvem mais fácil.

Outros usos incluem:

  • Gerenciamento de processos em segundo plano (daemon)
  • Execução de aplicativos usando scripts bash
  • Instalação de certificado Secure Socket Layer (SSL)
  • Agendamento de tarefas cron

Como funciona o Laravel Forge?

O novo design eficiente do Laravel Forge prioriza a simplicidade e a facilidade de uso. Ele permite que você escolha um provedor de hospedagem, como Digital Ocean, Linode, ou Rackspace, que fornece a você um servidor em minutos.

Cada servidor possui uma pilha completa das últimas versões do PHP, Nginx, MySQL, PostgreSQL, e bibliotecas de cache como Redis. Uma vez criado, o servidor permite que você conecte seu aplicativo às suas ferramentas de versionamento, como GitHub, GitLab, ou Bitbucket.

Laravel Forge adiciona um script de implantação ao seu aplicativo que pode ser executado nos servidores com um único clique. Isso proporciona maior flexibilidade e eficiência na implantação de aplicativos PHP Vanilla e Laravel. Laravel Forge também pode gerenciar aplicativos em outras pilhas de tecnologia, como o Node.js.

Durante a implantação, o Laravel Forge usa chaves SSH para entrar em seus servidores, executando e instalando todas as últimas dependências de software que seu aplicativo precisa. Isso facilita a mudança de provedores de hospedagem a qualquer momento para combater a escalabilidade ou para aumentar ou reduzir os servidores dependendo da demanda.

Outras opções de implantação para Laravel Forge incluem:

  • Scripts de Implantação: Esses scripts são usados para executar comandos no servidor. Essa opção de implantação pode ser editada usando a interface do Laravel Forge (UI).
  • Scripts de Implantação: Esses scripts são usados para executar comandos no servidor. Essa opção de implantação pode ser editada usando a interface do Laravel Forge (UI).

Como implantar com Laravel Forge

Para implantar um aplicativo usando Forge, crie uma conta com eles, e então escolha entre um dos muitos provedores de hospedagem de servidores disponíveis. Uma vez que você tenha provisionado seu servidor com a localização correta e plano de gota, crie um nome de domínio. A Forge cria automaticamente todas as dependências e bibliotecas necessárias instalando as últimas versões do PHP no seu servidor.

Nota: Você precisará de uma chave API para se conectar a um provedor de nuvem não fornecido em Laravel Forge.

A seguir, autentique o controle de versão de sua escolha. Isso facilita a migração da base de código do repositório para Laravel Forge. Os desenvolvedores podem então contribuir colaborativamente para o repositório e ter as mudanças autodesenvolvidas para o servidor.

Após conectar seu repositório, clique em Deploy Now para habilitar o software Forge a executar o script para implantar e configurar o aplicativo.

Uma maneira de implantar seu aplicativo usando Laravel Forge é usando uma ferramenta CI. Uma vez instalado o Forge CLI, você pode usar o comando implantar em seu ambiente CI. Você precisará do token da API Forge para autenticar a Forge CLI.

O exemplo abaixo ilustrará como fazer isso em alguns passos fáceis enquanto se usa o GitHub. Em seu diretório de projeto, crie um diretório do seu projeto/.github/flows de trabalho. Dentro dele, crie um arquivo forge.yml com o conteúdo abaixo:

name: Deploy

on:
  push:
    branches: [ main ]

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout code
        uses: actions/checkout@v2
      checkout@v2
      - name: Setup SSH
        uses: webfactory/[email protected]
        with:
          ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }}
      - name: Setup PHP
        uses: shivammathur/setup-php@v2
        with:
          php-version: 8.0
          tools: composer:v2
          coverage: none
      - name: Require Forge CLI
        run: composer global require laravel/forge-cli
      - name: Deploy Site
        run: |
          forge server:switch your-server-name
          forge deploy your-site-name.com
        env:
          FORGE_API_TOKEN: ${{ secrets.FORGE_API_TOKEN }}

Nota: Você pode revisar o código de exemplo aqui. Você pode então mover as mudanças para sua branch principal e deixar o GitHub Actions executar os scripts de implantação.

Variáveis de ambiente tais como senhas de bancos de dados e chaves secretas podem ser um desafio para se manter em um ambiente de produção. Para manter seus arquivos de projeto seguros, configure o banco de dados e as variáveis de ambiente de aplicativo para cada um dos arquivos de ambiente (.env) do seu projeto.

Benefícios do Laravel Forge

Os benefícios para o usuário do Laravel Forge incluem:

  • Não restringir os usuários para uma única plataforma de hospedagem. Isso facilita a implantação de vários projetos em provedores de hospedagem diferentes, dependendo das necessidades de cada um.
  • Utilizar o script de implantação para executar automaticamente os requisitos do seu aplicativo com as bibliotecas mais recentes, sem precisar instalá-las manualmente.
  • Consistência nas configurações e permissões de configuração, reduzindo custos e erros de implantação. Isso permite que os desenvolvedores foquem mais no desenvolvimento do aplicativo em vez de se preocuparem com a manutenção de scripts e processos de implantação.
  • Segurança avançada e intrínseca para o servidor do seu aplicativo, por meio de firewall, chaves SSH e isolamento de dados, para prevenir vazamentos de informações.

Laravel Forge e Kinsta

Enquanto Laravel Forge é responsável por gerenciar servidores de aplicativos, Kinsta é uma plataforma de gerenciamento de hospedagem que permite que você leve suas demandas de hospedagem de aplicativos e banco de dados para o próximo nível. Se você tem um site WordPress pelo software Forge, é fácil migrar para Kinsta de graça.

Kinsta oferece várias vantagens para seus usuários, tais como melhores ferramentas de otimização de tarefas administrativas, suporte DevOps para hospedagem de aplicativos e recursos Cloudflare para hospedagem WordPress.

Kinsta fornece tudo isso com ferramentas empresariais e recursos premium sem nenhum custo escondido ou extra para cada plano.

Resumo

A implantação pode ser um desafio para organizações grandes e pequenas. Cada aplicativo tem seus desafios, tais como problemas de escalabilidade, dependências redundantes e complexidade de processo.

Laravel Forge torna os aplicativos de hospedagem eficientes e sem complicações, atuando como corretora entre desenvolvedores e servidores. Usando várias opções de implantação, os desenvolvedores podem escolher entre scripts de implantação ou a ferramenta CI para gerenciar seus sites e servidores.

Assim como no Laravel Forge, implantar aplicativos web com a Kinsta é fácil, mas você também obtém maior flexibilidade, recursos e planos de preços. Comece sua avaliação gratuita hoje mesmo!