©2024 Escuela Tecnologías de la Información S.L. Todos los derechos reservados.
Curso de Laravel Forge
El curso de despliegue de aplicaciones Laravel con Forge
Material disponible
Una de las ventajas más destacables del framework PHP Laravel es su enorme ecosistema, que ofrece a los desarrolladores muchas utilidades y herramientas para mejorar su productividad y la experiencia de desarrollo. Uno de los ejemplos más relevantes de utilidades del ecosistema es Laravel Forge.
Laravel Forge responde a la necesidad de los desarrolladores de Laravel de desplegar aplicaciones de una manera ágil y segura. Cuando desarrollamos con un framework PHP, usamos Composer y necesitamos gestionar con servicios más o menos avanzados como los gestores de colas, es necesario contar con servidores para el despliegue de los proyectos.
Para trabajar con servidores tenemos básicamente dos opciones:
- Podemos instalar todo de manera manual, creando los servidores en un proveedor e instalando y configurando todos los programas necesarios para funcionar (PHP, Apache / Nginx, MySQL / MariaDB / PostgreSQL, Redis, etc.)
- Usar alguna herramienta que nos facilite el proceso de administración de los servidores de manera automática o semi-automática.
Ahí es donde entra Forge, que consiste en un panel de administración de servidores que nos permite simplificar toda la parte de administración de las máquinas y los programas necesarios para hacer funcionar las aplicaciones. Es decir, es una herramienta que facilita por tanto el despliegue y mantenimiento de los proyectos Laravel, pero también los proyectos en Symfony, WordPress o PHP en general, incluso los sitios estáticos.
Para que nos hagamos una idea, Forge equivaldría al software de paneles de control del estilo de Plesk o CPanel, con la diferencia de que éstos los necesitamos instalar en el servidor mientras que Forge es un panel que no necesitamos instalar en nuestras máquinas. En lugar de preocuparnos con tener un nuevo programa en los servidores de producción, toda esa infraestructura queda a cargo del equipo de Laravel. Esto tiene algunas ventajas:
- Forge no ocupa espacio en nuestros servidores, como sí ocupan los paneles del estilo de Plesk o CPanel
- No necesitamos mantener Forge nosotros mismos, lo que evita posibles problemas operacionales y de seguridad.
- No necesitamos pagar una licencia del panel por cada servidor que tengamos funcionando, ya que podemos crear cualquier número de servidores desde Forge en los servicios de cloud de distintos proveedores
En resumen, Forge es un complemento ideal para los desarrolladores que te encantará tener de tu lado.
Laravel Forge responde a la necesidad de los desarrolladores de Laravel de desplegar aplicaciones de una manera ágil y segura. Cuando desarrollamos con un framework PHP, usamos Composer y necesitamos gestionar con servicios más o menos avanzados como los gestores de colas, es necesario contar con servidores para el despliegue de los proyectos.
Para trabajar con servidores tenemos básicamente dos opciones:
- Podemos instalar todo de manera manual, creando los servidores en un proveedor e instalando y configurando todos los programas necesarios para funcionar (PHP, Apache / Nginx, MySQL / MariaDB / PostgreSQL, Redis, etc.)
- Usar alguna herramienta que nos facilite el proceso de administración de los servidores de manera automática o semi-automática.
Ahí es donde entra Forge, que consiste en un panel de administración de servidores que nos permite simplificar toda la parte de administración de las máquinas y los programas necesarios para hacer funcionar las aplicaciones. Es decir, es una herramienta que facilita por tanto el despliegue y mantenimiento de los proyectos Laravel, pero también los proyectos en Symfony, WordPress o PHP en general, incluso los sitios estáticos.
Para que nos hagamos una idea, Forge equivaldría al software de paneles de control del estilo de Plesk o CPanel, con la diferencia de que éstos los necesitamos instalar en el servidor mientras que Forge es un panel que no necesitamos instalar en nuestras máquinas. En lugar de preocuparnos con tener un nuevo programa en los servidores de producción, toda esa infraestructura queda a cargo del equipo de Laravel. Esto tiene algunas ventajas:
- Forge no ocupa espacio en nuestros servidores, como sí ocupan los paneles del estilo de Plesk o CPanel
- No necesitamos mantener Forge nosotros mismos, lo que evita posibles problemas operacionales y de seguridad.
- No necesitamos pagar una licencia del panel por cada servidor que tengamos funcionando, ya que podemos crear cualquier número de servidores desde Forge en los servicios de cloud de distintos proveedores
En resumen, Forge es un complemento ideal para los desarrolladores que te encantará tener de tu lado.
Qué aprenderé en el Curso de Laravel Forge
Objetivos del curso
El objetivo del Curso de Laravel Forge es enseñar a desplegar aplicaciones Laravel, aplicaciones PHP en general y sitios estáticos usando Forge. Esto incluye crear servidores, instalar el software necesario y configurar los servicios como las bases de datos, los gestores de colas, los supervisores de tareas, etc.
Aprender a administrar los servidores y los sitios web con las herramientas que nos ofrece Forge para facilitarnos el trabajo del día a día en la gestión de los servidores.
Por qué debes aprender Laravel con Forge
Qué tengo que saber
Para hacer este curso se supone que tenemos algunos conocimientos de desarrollo web, principalmente con Laravel y que estamos familiarizados con los procesos necesarios para ejecutar las aplicaciones web, como bases de datos, servidores, etc. Todo esto lo puedes aprender en cursos en EscuelaIT.
Clases y contenidos
DINÁMICAS DEL CURSO
A lo largo de este curso de Laravel Forge iremos combinando la liberación de vídeos para visualizarlos "a la carta" con tutorías online celebradas en sesiones en vivo. La fecha de la tutoría indica el día/hora de la sesión en vivo mientras que la fecha del contenido indica cuándo será liberado el vídeo.
Explicamos en qué consiste la herramienta Laravel Forge y qué tiene en común o en diferente con otros paneles del estilo de Plesk o CPanel.
En esta sesión vamos a explicar qué es Laravel Forge y cuáles son sus ventajas. Realizaremos un breve vistazo del panel de administración de los servidores y haremos un demo de despliegue de un proyecto de sitio HTML estático.
Una descripción de las opciones que encontramos en el panel de control de servidores Laravel Forge.
Explicamos cómo puedes asociar tus cuentas en distintos servidores de cloud al panel de control de Forge, para poder gestionar tus servicios y VPS desde Forge. Explicamos cómo crear nuevos servidores para los proyectos en los proveedores de cloud desde Forge.
Explicamos cómo crear nuevos servidores para los proyectos en los proveedores de cloud desde Forge.
En esta clase veremos cómo se realiza un despliegue de un sitio web basado en HTML, CSS y Javascript. Es un sitio que usa Vite y veremos cómo conseguir un despliegue continuo en el que se automaticen los procesos de build de Vite para construir la aplicación frontend en el servidor.
Esta es una sesión en vivo del curso en la que estamos disponibles para vuestras preguntas. Como contenido extra en el curso se vieron en esta clase las aplicaciones instalables de manera sencilla e inmediata con Forge. Vimos cómo instalar un proyecto WordPress y una aplicación PhpMyAdmin para la gestión remota de las bases de datos.
Cómo instalar certificados de seguridad SSL gratuitos desde el panel de Forge para los dominios que tenemos desplegados en nuestros servidores.
Qué podemos hacer con el sitio default que Forge crea en los servidores para el acceso usando la IP del servidor.
Realizamos todo el proceso de despliegue de aplicaciones Laravel con Forge, lo que incluye gestión de dependencias de Composer, y npm, compilado de assets con Vite, gestión de las variables de entorno, creación de la base de datos y configuración de los usuarios, certificados de seguridad para trabajar con HTTPS, etc.
Sin salir del panel podemos realizar la ejecución de comandos directamente sobre los servidores, lo que nos evita tener que hacer inicios de sesión por SSH.
Si fuera necesario seguimos teniendo el control de nuestros servidores por línea de comandos. En este vídeo veremos cómo realizar el inicio de sesión con el terminal por SSH.
Cómo usar un servicio de terceros para realizar el envío del email transacccional generado por las aplicaciones web.
Veremos cómo crear un trabajo que se encole en Laravel y cómo configurar un Worker en el sitio de producción para que ejecute los trabajos enviados a la cola usando la base de datos. Forge por debajo usará Supervisor.
En este vídeo veremos cómo configurar un programa para la administración de bases de datos con interfaz gráfica usando un túnel SSH, de modo que podremos administrar las bases de datos remotas.
Gestión de trabajos (jobs) de Laravel mediante la base de datos en memoria Redis. Cómo configurar la aplicación de Laravel para usar Redis y cómo configurar supervisor en el servidor, desde Forge, para que se ejecuten los trabajos enviados a las colas Redis
Cómo conseguir que los trabajos programados para el mantenimiento de las aplicaciones Laravel (limpieza de servidor, backups, analíticas, etc.) se realicen en los horarios que nosotros necesitemos.
Esta es una sesión en vivo en la que veremos cómo instalar lo que en Forge llaman un "custom vps", es decir, un servidor VPS que hayas podido contratar en cualquier proveedor de hosting que trabaje con servidores. Veremos además cómo hacer el despliege de un proyecto PHP "nativo" en el que no se usan frameworks, sino simplemente Composer y una base de datos.
En este vídeo vamos a mostrar cómo usar Laravel Horizon en una aplicación web, desde cero, instalando el panel de control de los trabajos en cola en local y luego desplegando el proyecto en el servidor, así como realizando la configuración del demonio (Daemon) desde el panel de control de Forge.
En esta clase vamos a ver algunos temas que nos quedaban pendientes por repasar en el panel de control de Forge, como la configuración de Nginx o el mantenimiento del servidor en lo que respecta a apagados y reinicios. Pero lo más importante y a lo que dedicaremos más tiempo es en la parte de las versiones de PHP. Estudiaremos el panel de versiones de PHP que tenemos en el servidor y luego mostraremos cómo se puede cambiar las versiones de PHP a nivel de servidor y a nivel de sitio.
En este vídeo vamos a dedicar un tiempo para explicar detalles importantes de la configuración de npm y Nodejs en el servidor. Veremos cómo cambiar versiones de npm y versiones de Node. Además estudiaremos la mejor manera de instalar en producción las dependencias de npm y ajustar los scripts de despliegue para que la instalación de las dependencias y la producción del CSS y el Javascript se haga con cada incorporación de cambios del repositorio Git.
Valoraciones
DOCAL ARTAJO / JAIME
Muy didactico. Como Siemre. Muchas gracias.
¿Conoces nuestra tarifa plana?
Toda la formación de EscuelaIT, con más de 200 cursos completos para aprender las más variadas tecnologías de programación, diseño y marketing online. Todo! con tu suscripción.