Skip to main content

Introducción

Para desarrollar y alojar una aplicación Laravel en Square Cloud, es esencial seguir una secuencia estructurada de configuraciones y requisitos previos. Esta guía técnica cubrirá todo el proceso, desde la configuración inicial hasta el despliegue en producción.

Requisitos previos

  • Cuenta de Square Cloud: Regístrate a través de la página de registro usando tu correo electrónico.
  • Plan activo: Garantiza recursos dedicados y un rendimiento optimizado para tu aplicación. Consulta nuestros planes disponibles y elige el más adecuado para tus necesidades.
Esta guía usa el runtime de PHP.

Crear el proyecto

Necesitas PHP y Composer en tu máquina. Instala el instalador de Laravel con Composer:
Luego crea un proyecto e inicia el servidor de desarrollo:
El servidor de desarrollo suele escuchar en http://localhost:8000. Aquí tienes una ruta básica en routes/web.php:
routes/web.php

Compilar para producción

Composer instala tus dependencias de PHP en Square Cloud, en el comando START de abajo. Si tu aplicación usa Vite para sus assets de frontend (lo predeterminado), ejecuta npm run build antes de crear tu ZIP para que se incluya la carpeta public/build.

Elegir un servidor de producción

Sin un comando START, Square Cloud ejecuta el servidor integrado de PHP (php -S 0.0.0.0:80) con la raíz del proyecto como raíz de documentos. La raíz de documentos de Laravel es la carpeta public/, así que tus rutas devolverían errores 404 y archivos como .env podrían quedar expuestos. Define siempre un comando START que ejecute el propio servidor de Laravel.

Puerto y host

php artisan serve necesita los dos valores en la línea de comandos: --host=0.0.0.0 --port=80. Sin --host=0.0.0.0, solo escucha en 127.0.0.1 y tu sitio agota el tiempo de espera.

Configurar Square Cloud

Crea un archivo squarecloud.app en la raíz de tu proyecto:
squarecloud.app
En cada inicio, este comando:
  • composer install --no-dev --optimize-autoloader instala tus dependencias de producción en vendor/.
  • php artisan migrate --force aplica las migraciones pendientes de la base de datos. --force es obligatorio para ejecutar migraciones en producción.
  • php artisan serve --host=0.0.0.0 --port=80 sirve tu aplicación desde la carpeta public/ a través del router de Laravel, en el puerto 80 y en todas las interfaces de red.
MAIN=public/index.php selecciona el runtime de PHP. Al subir por el dashboard, define el mismo archivo principal y comando de inicio.

Variables de entorno

Define estas variables de entorno en tu aplicación, desde el dashboard o con squarecloud app env set, en lugar de subir tu archivo .env local:

Confiar en el proxy de Square Cloud

Square Cloud sirve tu sitio por HTTPS a través de un proxy. Para que Laravel genere enlaces y URLs de assets con https://, confía en el proxy en bootstrap/app.php:
bootstrap/app.php

Mejor rendimiento con Swoole

php artisan serve atiende una solicitud a la vez. Para más tráfico, el runtime de PHP ya incluye Swoole: ejecuta tu aplicación sobre él con Laravel Octane (composer require laravel/octane).

Swoole

Ejecuta aplicaciones PHP sobre Swoole en Square Cloud.

Qué va en el ZIP

  • Todo tu proyecto: app/, bootstrap/, config/, database/, public/ (con public/build si usas Vite), resources/, routes/, storage/, artisan, composer.json y composer.lock.
  • squarecloud.app.
Deja fuera vendor/ y node_modules/ (Composer instala vendor/ en el servidor) y tu archivo .env local.

Hacer deploy y verificar

A través del panel

1

Accede a la página de subida

Accede a la página de subida y sube el archivo zip de tu proyecto.
2

Configura tu entorno

Después de subir tu zip, deberás configurar el nombre, el archivo principal o el entorno de ejecución y otros ajustes de tu proyecto.
Si estás subiendo un proyecto web, asegúrate de seleccionar “Publicación Web” y de definir un subdominio para tu proyecto.
3

Despliega tu proyecto

Por último, haz clic en el botón “Deploy” para alojar tu proyecto en Square Cloud.
Tras el despliegue, puedes monitorear el estado y los logs de tu proyecto desde el panel.
Subiendo aplicación a Square Cloud
4

Confirma que tu aplicación esté en vivo

Tu primer despliegue suele tardar menos de un minuto. En el dashboard, espera a que el estado de tu aplicación muestre “running” y revisa los logs por si hay errores de inicio.
Si desplegaste un sitio web o una API, abre https://<tu-subdominio>.squareweb.app en tu navegador: deberías ver tu aplicación respondiendo. Si desplegaste un bot, envíale un comando para confirmar que esté online.
¿La aplicación no inicia? Consulta la guía de solución de problemas para ver las causas y soluciones más comunes.

A través de la CLI

Para usar este método, tu proyecto necesita un archivo de configuración llamado squarecloud.app en su raíz. Le indica a Square Cloud cómo ejecutar tu aplicación.

Guía del archivo de configuración

Aprende a crear el archivo de configuración squarecloud.app que define el entorno de tu aplicación.
1

Instala la CLI

Instala la CLI de Square Cloud. Si ya la tienes, ejecuta el mismo comando para actualizarla:
2

Inicia sesión

Ejecuta el comando de abajo. Abre tu navegador: aprueba el inicio de sesión allí y la CLI queda lista. No hay ninguna clave de API que copiar. Para scripts y CI, consulta autenticación de la CLI.
3

Sube tu proyecto

Desde la carpeta de tu proyecto, ejecuta el comando de abajo. La CLI comprime la carpeta actual en un zip, dejando fuera lo que lista squarecloud.ignore, y lo sube:
Para subir un zip que creaste tú mismo, pásalo con --file:
4

Confirma que tu aplicación esté en vivo

Tu primer despliegue suele tardar menos de un minuto. Revisa el estado y los logs de tu aplicación directamente desde la terminal:
Si desplegaste un sitio web o una API, abre https://<tu-subdominio>.squareweb.app en tu navegador: deberías ver tu aplicación respondiendo. Si desplegaste un bot, envíale un comando para confirmar que esté online.
¿La aplicación no inicia? Consulta la guía de solución de problemas para ver las causas y soluciones más comunes.

Errores comunes

Dominio personalizado

Para usar un dominio personalizado (por ejemplo, mysite.com) en lugar de la URL predeterminada mysite.squareweb.app, necesitas el plan Standard o superior. La URL predeterminada sale del campo SUBDOMAIN del archivo de configuración. Para conectar tu dominio, sigue cómo configurar tu propio dominio.

Requisitos mínimos de RAM

Mínimo: 512MB de RAM para sitios web y APIs, suficiente para un build estático en el runtime estático. Para apps que renderizan páginas en un servidor (Next.js, Nuxt, Angular SSR y similares), recomendamos al menos 1GB de RAM. Para aplicaciones más grandes, asigna más RAM para evitar que la aplicación se quede sin memoria y falle.

No se pudo encontrar este sitio.

Verifica que el subdominio/dominio coincida con lo configurado en el campo SUBDOMAIN o en la configuración del dominio personalizado. Si acabas de subir el sitio, espera hasta 60 segundos para que Square habilite el primer acceso.

El sitio tardó demasiado en responder…

Tu servidor debe escuchar en el puerto 80 y el host 0.0.0.0. Square Cloud define las variables de entorno PORT (80) y HOST (0.0.0.0) en tu aplicación: léelas en tu código en lugar de fijar otros valores. Un servidor que escucha solo en localhost o 127.0.0.1 nunca recibe solicitudes.

No application encryption key has been specified

Falta APP_KEY. Genera una con php artisan key:generate --show, defínela como variable de entorno y reinicia la aplicación.

Próximos pasos

Variables de entorno

Mantén secretos y ajustes fuera de tu código y léelos en tiempo de ejecución.

Dominio personalizado

Sirve tu app en tu propio dominio, desde el plan Standard.

Solución de problemas

Arregla una app que no inicia o un sitio que no responde.
Para saber más sobre Laravel, consulta la documentación oficial de Laravel.

Contáctanos

Si continúas enfrentando dificultades técnicas, nuestro equipo de soporte especializado está disponible para ayudarte. Contáctanos y estaremos encantados de ayudarte a resolver cualquier problema: la calidad del soporte es una gran parte de por qué los desarrolladores califican a Square Cloud con 4.9/5 en 402 reseñas en Google y Trustpilot.