Configura tu web

Para crear una web Laravel dirígete al formulario 'Añadir sitio' y sigue los siguientes pasos:

  • Si no lo has hecho aún, selecciona el servidor de tu workspace donde se alojará la web.
  • Elige tu versión preferida de 'PHP' como lenguaje de programación.
  • Elige 'Laravel 5' como framework de desarrollo.
  • Indica el nombre de tu sitio en el servidor. La ruta base a tu sito en el servidor es /home/dev/sites/<nombre>.
  • Indica el dominio raíz de tu sitio web (p.ej. 'tudominio.com'). Recuerda que debes ser propietario de dicho dominio.
  • Selecciona el repositorio git donde se encuentra el código de tu aplicación Laravel. Puedes elegir cualquier repositorio que tengas accesible en GitHub, GitLab, Bitbucket o cualquier otro proveedor. También puedes dejar este campo como 'Ninguno' y gestionar tú mismo los despliegues de tu aplicación mediante otro método, aunque no te lo recomendamos.
  • Elige la base de datos que usará tu aplicación. Si no necesita una base de datos, selecciona 'Ninguno' como motor. En otro caso puedes crear una nueva base de datos y usuario MySQL en el mismo servidor, o usar una base de datos y usuario existentes. Los últimos pueden estar en cualquier servidor del workspace - Moss actualizará automáticamente las reglas de firewall necesarias 😀
  • Edita el contenido del fichero de variables de entorno de tu aplicación Laravel. Dicho fichero corresponde al típico .env que usas en tus despliegues. Moss genera automáticamente una configuración apropiada para tu aplicación, aunque puedes personalizarla según tus necesidades.
  • Elige el certificado SSL que quieres usar para tu sitio. Puedes decirle a Moss que genere un certificado Let's Encrypt gratuito o proporcionar tu propio certificado. Si seleccionas la opción 'Ninguno', tu web no estará accesible mediante el protocolo HTTPS.
  • Activa la casilla redireccionar www al dominio raíz si deseas que 'www.tudominio.com' dirija al usuario a 'tudominio.com'.
  • Activa la casilla permitir subdominios wildcard si tu web tiene subdominios de la forma 'abc.tudominio.com', 'def.tudominio.com', etc. Esta opción no es compatible con los certificados Let's Encrypt, por lo que deberás tener un certificado que admita subdominios wildcard o bien prescindir de HTTPS (lo cuál no te recomendamos).
  • Activa la casilla desplegar sitio automáticamente si deseas que Moss despliegue tu aplicación cada vez que hagas un 'git push' en el repositorio y branch/tag que has indicado.
  • Activa la casilla de monitorización si quieres que Moss compruebe periódicamente la salud de tu sitio web y te envíe una alerta siempre que esté caído. Normalmente querrás monitorizar tus aplicación web, salvo si se trata de un entorno de pruebas o similar.

Una vez que has acabado con la configuración anterior, haz click en el botón 'Añadir' y espera a que Moss termine el proceso.

Moss muestra el último paso que ha completado en cada momento para que puedas ver cómo progresa el proceso.

En este momento Moss te proporciona el registro Tipo A que has de configurar en tu proveedor DNS para que el dominio raíz de tu web apunte a la dirección IP externa de tu servidor.

Despliega tu web

Bien, Moss ya ha configurado tu servidor web para servir tu aplicación en el dominio raíz que has indicado. Ahora sólo falta desplegar la aplicación en el servidor para publicarla al mundo 😉

Ve a la pestaña 'Despliegues'. Moss soporta despliegues sin downtime permitiéndote especificar scripts de pre-activación y post-activación.

Cualquier comando que incluyas en el script de pre-activación se ejecutará antes de que se active tu nueva release. Durante ese tiempo el servidor web seguirá sirviendo tu release anterior. Moss genera automáticamente un script adecuado para aplicaciones Laravel. Dicho script actualiza las dependencias de tu aplicación mediante composer y ejecuta las migraciones de la base de datos mediante artisan. Si esto no se ajusta bien a tu aplicación, haz ahora los cambios que necesites.

Una vez que este script termina correctamente, se activa la nueva release y es a la que acceden tus usuarios de ahí en adelante. En este momento, puedes querer ejecutar un script de post-activación para ejecutar comandos que dependen de la nueva versión de tu código. P.ej. Moss te sugiere un script sencillo que reinicia tus workers Laravel (sólo por si acaso tu aplicación usa workers). Si no necesitas ejecutar nada en esta fase, simplemente indica un script vacío o déjalo tal y como sugiere Moss.

Si quieres desplegar tu aplicación ahora de forma manual, haz click en el botón 'Desplegar' y Moss se pondrá manos a la obra.

De forma alternativa, puedes seleccionar la opción 'Desplegar sitio automáticamente' y forzar el despliegue haciendo un git push  en el repositorio de la aplicación web.

Puedes comprobar la salida de tu último despliegue en cualquier momento en /home/dev/sites/<name>/logs/deploy/pre-activation.log y /home/dev/sites/<name>/logs/deploy/post-activation.log.

Moss te mostrará en la pestaña 'Estado' si tu aplicación está accesible a través de los protocolos HTTP y HTTPS. Una vez tu web Laravel está desplegada, Moss debe ser capaz de acceder a ella de forma satisfactoria. Sin embargo, es posible que las primeras comprobaciones de la salud de tu aplicación fallen debido a las cachés DNS. Una vez estas cachés expiran, y supuesto que has configurado correctamente tu proveedor DNS, Moss detectará que tu web está online.

¿Ahora qué?

¡Enhorabuena! Moss ha configurado, desplegado y está monitorizando tu nueva aplicación web 😃. Si tu aplicación necesita procesar trabajos en segundo plano, ahora puedes configurarlos como workers con Moss.

Did this answer your question?