Desplegament

Aprèn a desplegar la teva aplicació Laravel a producció: preparació, Forge, Vapor, Laravel Cloud, Docker i CI/CD.

Desenvolupar una aplicació Laravel al teu ordinador local és una experiència plaent: el servidor d'Artisan arrenca en mil·lisegons, els canvis es reflecteixen immediatament, els errors es mostren amb detall i tot funciona en un entorn controlat. Però entre el teu localhost:8000 i una aplicació real servint milers d'usuaris hi ha un abisme de decisions, configuracions i processos que marquen la diferència entre un projecte amateur i un producte professional. Desplegar a producció no és simplement "pujar fitxers a un servidor": és un procés que requereix preparació, automatització i una comprensió clara de la infraestructura on viurà la teva aplicació.

El desplegament d'una aplicació web moderna segueix un cicle de vida ben definit. Primer, la preparació: optimitzar la configuració, compilar els assets, configurar les variables d'entorn i assegurar-se que l'aplicació està llesta per funcionar en un entorn de producció. Després, la infraestructura: escollir i configurar el servidor o servei on correrà l'aplicació, amb tot el que això implica (PHP, Nginx, base de dades, Redis, certificats SSL, firewall). A continuació, el desplegament pròpiament dit: transferir el codi nou al servidor, executar migracions, netejar caches i reiniciar els serveis necessaris. Finalment, la monitorització: verificar que tot funciona correctament, detectar errors i mantenir l'aplicació saludable al llarg del temps.

Laravel, com a ecosistema, destaca per oferir solucions oficials per a cadascuna d'aquestes fases. No et deixa sol davant d'un terminal SSH: posa a la teva disposició eines que cobreixen des del servidor més tradicional fins a l'arquitectura serverless més moderna.

Laravel Forge és la solució per a qui vol servidors tradicionals sense la complexitat de configurar-los manualment. Forge aprovisiona servidors a DigitalOcean, AWS, Hetzner o qualsevol VPS, i els configura automàticament amb Nginx, PHP, MySQL, Redis i tot el que necessita una aplicació Laravel. Després, gestiona els desplegaments, els certificats SSL, les cues i la monitorització des d'una interfície web elegant. És la opció ideal per a equips que volen control total sobre la infraestructura sense dedicar hores a l'administració de sistemes.

Laravel Vapor porta l'aplicació al núvol serverless d'AWS Lambda. En lloc de gestionar servidors, pagues per l'ús real: si l'aplicació no rep peticions, no pagues res. Si rep un pic de tràfic inesperat, escala automàticament sense cap intervenció. Vapor abstrau completament la infraestructura d'AWS (Lambda, SQS, S3, CloudFront, RDS) i la fa accessible des d'un simple fitxer YAML i una comanda de desplegament.

Laravel Cloud és la plataforma gestionada més recent de l'ecosistema Laravel. Pensada per oferir la màxima simplicitat, combina el millor dels dos mons: l'escalabilitat del núvol amb la facilitat d'ús d'un PaaS modern. Inclou preview environments per a cada pull request, desplegaments automàtics i una gestió integrada de tota la infraestructura.

Per als equips que prefereixen gestionar la seva pròpia infraestructura amb total control, Docker ofereix la portabilitat dels contenidors: empaqueta l'aplicació amb totes les seves dependències en una imatge que funciona idènticament en qualsevol entorn, des del portàtil del desenvolupador fins al clúster de producció.

I transversalment a totes aquestes opcions, els pipelines de CI/CD automatitzen tot el procés: cada push al repositori dispara tests automàtics, compilació d'assets i desplegament sense intervenció humana. GitHub Actions, GitLab CI o qualsevol eina de CI/CD pot integrar-se amb qualsevol de les estratègies de desplegament anteriors per garantir que el codi que arriba a producció ha passat tots els controls de qualitat.

En aquesta secció, explorarem cadascuna d'aquestes opcions en detall, començant per la preparació que és comuna a totes elles i acabant amb l'automatització del procés complet.