Laravel Forge
Com desplegar i gestionar servidors amb Laravel Forge: aprovisionament, desplegament, SSL, cues, base de dades i monitorització.
Laravel Forge és una plataforma d'aprovisionament i gestió de servidors dissenyada específicament per a aplicacions PHP i Laravel. En lloc de passar hores configurant manualment un servidor Linux des de zero (instal·lar PHP, Nginx, MySQL, Redis, Supervisor, configurar el firewall, crear certificats SSL, establir les regles de cron...), Forge fa tot això en minuts amb uns quants clics. No és un servei d'allotjament: Forge no allotja la teva aplicació. El que fa és aprovisionar i gestionar servidors que tu contractes directament a un proveïdor de cloud com DigitalOcean, AWS o Hetzner. Tu ets el propietari del servidor, amb accés root complet, i Forge s'encarrega de la configuració i el manteniment.
Això significa que mantens el control total sobre la infraestructura (pots accedir per SSH, instal·lar paquets addicionals, modificar configuracions) mentre et beneficies de l'automatització que Forge proporciona. És la opció ideal per a equips que necessiten servidors dedicats amb configuracions específiques, però no volen dedicar un administrador de sistemes a temps complet a gestionar-los.
Què instal·la Forge#
Quan aprovisiones un servidor nou a través de Forge, el servei configura automàticament tot el programari necessari per executar una aplicació Laravel en producció. La pila de programari inclou:
- Nginx com a servidor web, configurat amb les optimitzacions recomanades per a Laravel
- PHP amb la versió que triïs (8.1, 8.2, 8.3 o 8.4), amb totes les extensions necessàries (mbstring, xml, curl, gd, zip, redis, etc.)
- MySQL 8 o PostgreSQL com a sistema de gestió de bases de dades
- Redis per a cache, sessions i cues
- Supervisor per gestionar els workers de cues
- Composer per a les dependències PHP
- Node.js i npm per a la compilació d'assets
- Let's Encrypt client per a certificats SSL gratuïts
- UFW (Uncomplicated Firewall) configurat per defecte
- Unattended upgrades per a actualitzacions de seguretat automàtiques
- fail2ban per a protecció contra atacs de força bruta SSH
Tot el programari s'instal·la des dels repositoris oficials i es configura seguint les bones pràctiques de seguretat. El servidor queda llest per allotjar aplicacions Laravel en qüestió de minuts.
Proveïdors suportats#
Forge s'integra directament amb els principals proveïdors de cloud, cosa que permet crear servidors sense sortir de la interfície de Forge. Només cal connectar el teu compte del proveïdor (normalment amb una clau API) i Forge s'encarrega de crear la instància, configurar-la i donar-te accés:
- DigitalOcean: La opció més popular entre els usuaris de Forge per la seva simplicitat i bona relació qualitat-preu. Plans des de 4$/mes.
- AWS (Amazon Web Services): Per a qui necessita l'ecosistema complet d'AWS (EC2, RDS, ElastiCache). Més complex de configurar, però ofereix més flexibilitat.
- Hetzner: Proveïdor europeu amb centres de dades a Alemanya i Finlàndia. Excel·lent relació qualitat-preu, ideal per a aplicacions que necessiten servidors a Europa.
- Vultr: Alternativa a DigitalOcean amb centres de dades arreu del món i preus competitius.
- Linode (Akamai): Un altre proveïdor de cloud amb bona reputació i preus raonables.
- Custom VPS: Forge pot gestionar qualsevol servidor Ubuntu al qual tinguis accés root per SSH. Això inclou servidors d'OVH, Scaleway, qualsevol VPS dedicat o fins i tot un servidor físic al teu rack.
Per a servidors personalitzats (custom VPS), Forge genera un script d'aprovisionament que has d'executar al servidor. L'script instal·la tot el programari necessari i configura la connexió amb Forge per a la gestió remota.
Crear un servidor#
El procés de creació d'un servidor és senzill. Després de connectar el teu proveïdor de cloud, selecciones les opcions principals:
- Proveïdor: Quin servei de cloud utilitzar
- Tipus de servidor: App Server (per a aplicacions web), Database Server (només base de dades), Worker Server (només workers de cues), o Load Balancer
- Regió: La ubicació geogràfica del servidor. Tria la més propera als teus usuaris per minimitzar la latència
- Mida: CPU i RAM del servidor. Per a la majoria d'aplicacions Laravel, 2GB de RAM és un bon punt de partida
- Versió de PHP: Quina versió de PHP instal·lar per defecte (es pot canviar després)
- Base de dades: MySQL 8, PostgreSQL 16, MariaDB o cap
Un cop confirmat, Forge crea la instància al proveïdor de cloud i comença el procés d'aprovisionament, que normalment triga entre 5 i 10 minuts. Durant aquest temps, Forge instal·la i configura tot el programari, crea l'usuari forge (amb el qual s'executa l'aplicació), configura el firewall i estableix les claus SSH.
Afegir un lloc web (site)#
Amb el servidor aprovisionat, el següent pas és afegir un lloc web. Un servidor de Forge pot allotjar múltiples aplicacions, cadascuna amb el seu propi domini i configuració:
- Domini: El nom de domini complet (per exemple,
lamevaaplicacio.com) - Tipus de projecte: General PHP / Laravel, Static HTML, Symfony, etc.
- Directori web: El directori públic dins del projecte (per defecte
/publicper a Laravel) - PHP version: Pots assignar una versió de PHP diferent a cada lloc si necessites compatibilitat amb aplicacions antigues
Forge crea automàticament la configuració de Nginx per al nou lloc, amb totes les regles necessàries per a Laravel (reescriptura d'URLs, bloqueig de fitxers sensibles, etc.). El directori del projecte es crea a /home/forge/lamevaaplicacio.com/.
Connectar un repositori Git#
Un cop creat el lloc, connecta'l al teu repositori de codi. Forge suporta GitHub, GitLab, Bitbucket i repositoris Git genèrics. Selecciona el proveïdor, autoritza l'accés (si és el primer cop) i tria el repositori i la branca:
Forge clonarà el repositori al directori del lloc i configurarà el webhook per rebre notificacions de cada push. Amb el codi clonat, pots executar el primer desplegament.
Desplegament#
El desplegament és el procés central de Forge. Cada lloc té un script de desplegament que defineix exactament quins passos s'executen quan es desplega codi nou. Forge proporciona un script per defecte que cobreix els casos més habituals, però pots personalitzar-lo completament.
L'script de desplegament#
L'script de desplegament per defecte de Forge és concís però complet. A continuació, una versió detallada amb explicacions de cada pas:
cd /home/forge/lamevaaplicacio.com
# 1. Activar el mode de manteniment
# Mostra una pàgina 503 als usuaris mentre es desplega
php artisan down --retry=60
# 2. Obtenir el codi més recent de la branca configurada
git pull origin $FORGE_SITE_BRANCH
# 3. Instal·lar dependències PHP
# --no-interaction: no demana confirmació
# --prefer-dist: descarrega paquets comprimits (més ràpid)
# --optimize-autoloader: genera classmap optimitzat
# --no-dev: exclou dependències de desenvolupament
composer install --no-interaction --prefer-dist --optimize-autoloader --no-dev
# 4. Instal·lar dependències JavaScript i compilar assets
# npm ci: instal·lació neta basada en package-lock.json
npm ci
npm run build
# 5. Executar migracions de base de dades
# --force: necessari en entorn de producció
php artisan migrate --force
# 6. Optimitzar l'aplicació (cache de config, rutes, vistes, events)
php artisan optimize
# 7. Reiniciar els workers de cues
# Espera que acabin el job actual i reinicia amb el codi nou
php artisan queue:restart
# 8. Desactivar el mode de manteniment
php artisan upLa variable $FORGE_SITE_BRANCH és una variable d'entorn que Forge defineix automàticament amb la branca configurada per al lloc. Forge també proporciona altres variables útils com $FORGE_SERVER_ID, $FORGE_SITE_ID i $FORGE_DEPLOY_COMMIT.
Desplegament automàtic (auto-deploy)#
Forge pot configurar el desplegament automàtic perquè cada push a la branca configurada dispari automàticament el procés de desplegament. Això s'aconsegueix amb un webhook que GitHub (o GitLab/Bitbucket) crida cada cop que hi ha un push.
Per activar-lo, només cal fer clic al botó "Enable Quick Deploy" a la pàgina del lloc. A partir d'aquell moment, cada push a la branca (normalment main) dispararà automàticament l'script de desplegament. Això és molt pràctic per a equips petits, però per a equips més grans és recomanable combinar-ho amb un pipeline de CI/CD que executi tests abans de desplegar.
Desplegament manual#
A més del desplegament automàtic, Forge ofereix diverses maneres de disparar un desplegament manualment:
- Botó a la interfície web: Un simple clic al botó "Deploy Now" a la pàgina del lloc
- CLI de Forge: Des del terminal amb la comanda
forge deploy - API de Forge: Una petició HTTP POST per integrar-ho amb eines externes
# Desplegament via API
curl -X POST \
"https://forge.laravel.com/api/v1/servers/{server_id}/sites/{site_id}/deployment/deploy" \
-H "Authorization: Bearer {api_token}" \
-H "Accept: application/json"L'API és especialment útil per integrar Forge amb pipelines de CI/CD personalitzats. Per exemple, pots configurar GitHub Actions perquè executi tests i, si passen, dispari el desplegament a Forge via l'API.
Deploy hooks#
Forge permet definir hooks que s'executen abans i després del desplegament. Aquests hooks són útils per executar accions addicionals que no formen part de l'script principal:
- Before deploy: S'executa abans de l'script de desplegament. Útil per crear backups de la base de dades o notificar l'equip que comença un desplegament.
- After deploy: S'executa després de l'script de desplegament. Útil per enviar notificacions de desplegament completat, purgar la CDN o executar tests de smoke.
Desplegament amb zero downtime#
Per a aplicacions que no poden permetre's cap segon d'inactivitat, Forge s'integra amb Laravel Envoyer, el servei oficial de desplegaments amb zero downtime. Envoyer implementa l'estratègia de directoris amb symlinks que hem vist a la secció de preparació: prepara cada nova versió en un directori separat i intercanvia el symlink atòmicament quan tot està llest.
Envoyer afegeix funcionalitats addicionals com rollbacks amb un sol clic (torna a la versió anterior canviant el symlink), notificacions a Slack/Discord/email, health checks automàtics després del desplegament i hooks personalitzats en cada fase del procés.
Certificats SSL#
Cada aplicació web en producció necessita HTTPS, i Forge simplifica completament la gestió de certificats SSL:
Let's Encrypt (gratuït)#
Let's Encrypt és una autoritat de certificació gratuïta i automàtica. Forge integra Let's Encrypt de manera nativa: amb un sol clic, sol·licita, instal·la i configura un certificat SSL per al teu domini. El certificat es renova automàticament cada 60 dies (els certificats de Let's Encrypt tenen una validesa de 90 dies), sense cap intervenció manual.
Per obtenir un certificat de Let's Encrypt, el domini ha d'apuntar al servidor (el registre DNS A ha d'apuntar a la IP del servidor). Let's Encrypt verifica la propietat del domini fent una petició HTTP al servidor, i si la verificació és correcta, emet el certificat.
Forge també suporta certificats wildcard (*.lamevaaplicacio.com) amb Let's Encrypt, que requereixen verificació per DNS en lloc de per HTTP. Forge pot configurar automàticament els registres DNS si el domini està gestionat per un proveïdor de DNS suportat (Cloudflare, Route 53, DigitalOcean DNS).
Certificats personalitzats#
Si necessites un certificat d'una autoritat de certificació comercial (per exemple, certificats EV amb validació estesa), pots instal·lar-lo manualment a través de la interfície de Forge. Només cal enganxar el certificat, la clau privada i, si escau, la cadena de certificats intermèdia.
Cloudflare#
Si el teu domini utilitza Cloudflare com a proxy, Forge pot configurar el certificat SSL perquè funcioni correctament amb Cloudflare. El mode recomanat és "Full (Strict)", que xifra el tràfic tant entre l'usuari i Cloudflare com entre Cloudflare i el teu servidor.
Gestió de bases de dades#
Forge proporciona una interfície web per gestionar les bases de dades del servidor sense necessitat de connectar-se per SSH o utilitzar un client de base de dades:
Crear bases de dades i usuaris#
Des de la interfície de Forge, pots crear bases de dades noves i usuaris amb permisos específics. Per a cada aplicació, és recomanable crear un usuari de base de dades dedicat amb accés només a la base de dades d'aquella aplicació:
Base de dades: lamevaaplicacio
Usuari: app_lamevaaplicacio
Permisos: tots (sobre lamevaaplicacio), cap sobre les altres
Accés remot#
Per defecte, les bases de dades de Forge només són accessibles des del propi servidor (localhost). Si necessites connectar-te des del teu ordinador local per gestionar dades o depurar problemes, tens dues opcions:
-
Obrir el port al firewall: Forge permet obrir el port 3306 (MySQL) o 5432 (PostgreSQL) per a IPs específiques. Això és menys segur perquè la base de dades queda exposada a Internet, encara que restringida per IP.
-
Túnel SSH: La opció més segura. Connecta't a la base de dades a través d'un túnel SSH que xifra tot el tràfic:
# Crear un túnel SSH al servidor de Forge
ssh -N -L 3306:127.0.0.1:3306 forge@ip-del-servidor
# Ara pots connectar-te a la base de dades localment
mysql -h 127.0.0.1 -u app_lamevaaplicacio -p lamevaaplicacioBackups#
Forge pot configurar backups automàtics de les bases de dades cap a Amazon S3 o un servei compatible. Pots definir la freqüència (diària, setmanal), el nombre de backups a mantenir i rebre notificacions si un backup falla. Els backups es comprimeixen i s'encripten opcionalment abans de pujar-los al servei d'emmagatzematge.
Per a aplicacions crítiques, és recomanable verificar periòdicament que els backups es poden restaurar. Un backup que no es pot restaurar és inútil. Forge facilita la restauració amb un sol clic des de la interfície.
Workers de cues#
Les cues són una part essencial de la majoria d'aplicacions Laravel, i Forge simplifica la configuració dels workers que les processen. En lloc de configurar Supervisor manualment (crear fitxers de configuració, definir processos, gestionar reinicis), Forge proporciona una interfície visual per crear i gestionar workers.
Crear un worker#
Per crear un worker, especifica:
- Connexió: El driver de cues (normalment
redis) - Cua: Quina cua processar (per exemple,
default,emails,high,default,low) - Processos: Quants workers paral·lels executar
- Temps màxim: El timeout per job en segons
- Intents: Quantes vegades reintentar un job fallit
- Sleep: Segons d'espera quan la cua està buida
- Max time: Temps màxim de vida del worker (es reinicia automàticament)
Forge genera automàticament la configuració de Supervisor i inicia els processos. Per exemple, si configures 4 processos per a la cua default, Forge crearà una configuració de Supervisor que manté 4 workers actius permanentment:
; Generat automàticament per Forge
[program:worker-lamevaaplicacio-1]
process_name=%(program_name)s_%(process_num)02d
command=php8.3 /home/forge/lamevaaplicacio.com/artisan queue:work redis --sleep=3 --tries=3 --max-time=3600 --queue=default
autostart=true
autorestart=true
stopasgroup=true
killasgroup=true
user=forge
numprocs=4
redirect_stderr=true
stdout_logfile=/home/forge/.forge/worker-lamevaaplicacio-1.log
stopwaitsecs=3600Múltiples workers per a diferents cues#
Si l'aplicació utilitza múltiples cues amb diferents prioritats, pots crear workers separats per a cadascuna. Per exemple:
- Worker 1: 4 processos per a la cua
high(correus urgents, notificacions push) - Worker 2: 2 processos per a la cua
default(processament general) - Worker 3: 1 procés per a la cua
low(informes, estadístiques)
Aquesta separació permet assignar més recursos a les tasques urgents sense que les tasques de baixa prioritat bloquegin la cua.
Reinici de workers#
Després de cada desplegament, els workers han de reiniciar-se per carregar el codi nou. L'script de desplegament de Forge inclou php artisan queue:restart per defecte, que envia un senyal als workers perquè es reiniciïn de manera elegant (acabant el job actual abans de parar).
Scheduler (cron)#
Laravel utilitza un sol cron job que crida php artisan schedule:run cada minut. Forge configura aquest cron automàticament quan crees un lloc de tipus Laravel. Si necessites afegir-lo manualment o per a llocs que no són Laravel, pots fer-ho des de la secció "Scheduler" del servidor:
* * * * * cd /home/forge/lamevaaplicacio.com && php artisan schedule:run >> /dev/null 2>&1Forge també permet crear cron jobs personalitzats per a altres tasques programades, com scripts de manteniment, sincronitzacions o informes automàtics.
Variables d'entorn#
Forge proporciona un editor per al fitxer .env directament a la interfície web. Pots modificar les variables d'entorn sense connectar-te per SSH al servidor. Cada canvi es guarda al fitxer /home/forge/lamevaaplicacio.com/.env.
Després de modificar les variables d'entorn, recorda executar un desplegament o almenys php artisan config:cache perquè els canvis tinguin efecte (ja que la configuració està cacheada en producció, els canvis al .env no es reflecteixen fins que es regenera la cache).
El fitxer .env conté credencials sensibles (claus d'API, contrasenyes de base de dades, secrets). L'editor de Forge mostra el contingut complet del fitxer a la interfície web. Assegura't que només les persones autoritzades tinguin accés al teu compte de Forge, i considera activar l'autenticació de dos factors (2FA) per protegir el compte.
Gestió de PHP#
Forge simplifica la gestió de les versions de PHP al servidor:
Canviar la versió de PHP#
Pots canviar la versió de PHP per defecte del servidor o assignar una versió diferent a cada lloc. Això és útil quan migres gradualment les aplicacions a una nova versió de PHP: pots actualitzar un lloc a PHP 8.4 mentre els altres segueixen amb PHP 8.3.
Per canviar la versió de PHP d'un lloc, Forge actualitza automàticament la configuració de Nginx perquè apunti al socket de PHP-FPM de la versió seleccionada. El canvi és instantani i no requereix reiniciar el servidor.
Instal·lar múltiples versions#
Forge permet instal·lar múltiples versions de PHP al mateix servidor. Cada versió té la seva pròpia configuració de PHP-FPM, les seves extensions i el seu php.ini. Això permet executar aplicacions antigues que requereixen PHP 8.1 al costat d'aplicacions modernes que aprofiten les funcionalitats de PHP 8.4.
Configuració de PHP-FPM#
Des de la interfície de Forge, pots editar la configuració de PHP-FPM per a cada versió instal·lada. Les configuracions més habituals que cal ajustar en producció inclouen:
; Nombre de processos fills que PHP-FPM manté actius
pm.max_children = 50
; Nombre de processos fills que s'inicien quan arrenca PHP-FPM
pm.start_servers = 10
; Nombre mínim de processos fills en espera
pm.min_spare_servers = 5
; Nombre màxim de processos fills en espera
pm.max_spare_servers = 20
; Nombre de peticions que un procés fill processa abans de reiniciar-se
; (per prevenir fuites de memòria)
pm.max_requests = 500El valor de pm.max_children depèn de la memòria disponible al servidor. Cada procés PHP-FPM consumeix entre 30 i 50 MB de RAM. Si el servidor té 4 GB de RAM i 2 GB estan disponibles per a PHP, pots tenir entre 40 i 65 processos fills.
Claus SSH#
Forge gestiona les claus SSH per controlar qui pot accedir als servidors. Pots afegir claus SSH des de la configuració del teu perfil (s'afegiran automàticament a tots els servidors nous) o directament a un servidor específic.
Forge també utilitza les claus SSH per connectar-se als repositoris Git. Quan connectes un repositori, Forge genera un parell de claus SSH específic per al lloc i l'afegeix com a deploy key al repositori, permetent l'accés de només lectura.
Per a equips, Forge permet crear "Circles" (cercles d'accés) que agrupen servidors i gestionen les claus SSH de múltiples membres de l'equip. Quan un membre deixa l'equip, elimines la seva clau del cercle i automàticament perd l'accés a tots els servidors.
Monitorització#
Forge proporciona monitorització bàsica del servidor que inclou mètriques de CPU, RAM, espai en disc i ample de banda. Aquestes mètriques es mostren al dashboard del servidor amb gràfics temporals que permeten identificar tendències i problemes.
Alertes#
Forge pot enviar alertes per correu electrònic o Slack quan es compleixen certes condicions:
- Ús de disc superior al 90%
- Ús de CPU superior al 80% durant un període sostingut
- Ús de RAM superior al 85%
- Certificat SSL a punt de caducar
Aquestes alertes són essencials per reaccionar proactivament abans que un problema afecti els usuaris. Per a una monitorització més avançada (temps de resposta, errors d'aplicació, mètriques personalitzades), és recomanable complementar Forge amb eines dedicades com Laravel Pulse, Sentry o New Relic.
Receptes (Recipes)#
Les receptes de Forge són scripts reutilitzables que pots executar a un o més servidors amb un sol clic. Són ideals per a tasques de manteniment que executes periòdicament:
# Recepta: Netejar logs antics
find /home/forge/lamevaaplicacio.com/storage/logs -name "*.log" -mtime +30 -delete
echo "Logs antics eliminats"# Recepta: Backup manual de la base de dades
DATE=$(date +%Y%m%d_%H%M%S)
mysqldump -u forge lamevaaplicacio | gzip > /home/forge/backups/lamevaaplicacio_$DATE.sql.gz
echo "Backup creat: lamevaaplicacio_$DATE.sql.gz"# Recepta: Reiniciar tots els serveis
sudo systemctl restart nginx
sudo systemctl restart php8.3-fpm
sudo systemctl restart supervisor
echo "Serveis reiniciats"Pots programar receptes perquè s'executin automàticament amb un schedule, o executar-les manualment quan les necessitis. Les receptes també es poden executar a múltiples servidors simultàniament, cosa que és molt útil quan tens un clúster de servidors.
Xarxes (Networks)#
Forge permet crear xarxes privades entre servidors. Això és essencial quan tens una arquitectura distribuïda amb servidors dedicats a diferents funcions:
- Servidor d'aplicació: Serveix les peticions HTTP
- Servidor de base de dades: Allotja MySQL/PostgreSQL
- Servidor de cache: Allotja Redis
- Servidor de workers: Processa les cues
Amb una xarxa privada, els servidors es comuniquen a través d'IPs privades (10.x.x.x o 172.x.x.x) en lloc d'IPs públiques. El tràfic entre servidors mai surt a Internet, cosa que millora tant la seguretat (les connexions no són interceptables) com el rendiment (les xarxes privades solen tenir menys latència i més ample de banda).
La configuració és senzilla: afegeix els servidors a la mateixa xarxa a Forge i utilitza les IPs privades a la configuració de l'aplicació:
# En lloc d'apuntar a localhost, apunta al servidor de base de dades
DB_HOST=10.132.0.3
# Redis al servidor de cache
REDIS_HOST=10.132.0.4Seguretat#
Forge configura automàticament mesures de seguretat bàsiques al servidor, però hi ha configuracions addicionals que pots gestionar:
Firewall#
Forge configura UFW (Uncomplicated Firewall) per defecte, permetent només el tràfic als ports necessaris:
- Port 22: SSH
- Port 80: HTTP
- Port 443: HTTPS
Pots afegir regles addicionals des de la interfície de Forge. Per exemple, obrir el port 3306 per a connexions MySQL des d'una IP específica, o el port 6379 per a Redis des d'un altre servidor de la xarxa.
Seguretat SSH#
Forge configura l'accés SSH amb claus públiques per defecte (l'autenticació per contrasenya està desactivada). L'usuari root no pot connectar-se directament per SSH: has d'utilitzar l'usuari forge i, si necessites privilegis root, utilitzar sudo.
Per a una seguretat encara més robusta, pots:
- Canviar el port SSH per defecte (22) a un port no estàndard per reduir els intents d'atac automatitzats
- Restringir l'accés SSH a IPs específiques amb una regla de firewall
- Activar l'autenticació de dos factors al teu compte de Forge
Preus i plans#
Forge ofereix diversos plans que s'adapten a la mida de l'equip i el nombre de servidors:
- Hobby: 12$/mes. Un servidor, perfecte per a projectes personals o petites aplicacions.
- Growth: 19$/mes. Servidors il·limitats, ideal per a equips petits amb múltiples projectes.
- Business: 39$/mes. Tot l'anterior més gestió d'equips, cercles d'accés i suport prioritari.
Tots els plans inclouen nombre il·limitat de llocs web per servidor, desplegaments il·limitats, certificats SSL amb Let's Encrypt i accés a totes les funcionalitats de Forge. El preu és per l'accés a la plataforma de gestió: el cost del servidor al proveïdor de cloud és independent i es paga directament al proveïdor.
Per a equips que comencen, la combinació de Forge Growth (19$/mes) amb un servidor de DigitalOcean (12-24$/mes) ofereix una infraestructura professional per menys de 40$/mes, amb la capacitat d'allotjar múltiples aplicacions en un sol servidor.
Forge és una inversió que es paga sola ràpidament. El temps que un desenvolupador dedica a configurar i mantenir servidors manualment (instal·lar actualitzacions de PHP, renovar certificats SSL, depurar problemes de Nginx, configurar Supervisor) supera amb escreix el cost de la subscripció. Forge converteix hores d'administració de sistemes en minuts de clics a una interfície web.