68 Despliegue a Producción en Laravel Sube tu Proyecto y Base de Datos a un Servidor Real 🚀🌐
Duración: 10 minDescripción
🚀 Lección 68: Despliegue a Producción en Laravel: Sube tu Proyecto y Base de Datos a un Servidor Real
En este capítulo final completamos el ciclo de vida del desarrollo de software realizando el despliegue a producción (Deployment) de nuestro Sistema para Farmacia. Migramos todo el código fuente optimizado y la estructura final de la base de datos desde nuestro entorno local hacia un servidor de hosting real (CPanel), dejando el sistema 100% operativo y en limpio para los usuarios.
🎯 El Objetivo Central
Preparar el empaquetado del proyecto Laravel, limpiar los archivos residuales de caché, exportar/importar la estructura final de la base de datos multisucursal y configurar el entorno del servidor real para asegurar el funcionamiento del demo público.
🗄️ 1. Preparación y Migración de la Base de Datos (39 Tablas)
El diseño final de nuestro ecosistema concluyó con un total de 39 tablas relacionales [01:40]. Para el despliegue final:
- Base de Datos en Limpio: Ejecutamos un comando de limpieza total en local (php artisan migrate:fresh --seed), dejando activos únicamente los registros mandatorios: la configuración del módulo Ajustes, la Casa Matriz, los roles iniciales y las credenciales del usuario Superadministrador [03:14].
- Exportación e Importación: Vaciamos las tablas desactualizadas del servidor de producción, exportamos el archivo SQL local en limpio y lo importamos en el gestor phpMyAdmin del hosting, consolidando las 39 tablas en el servidor real [06:03].
🛠️ 2. Optimización del Código y Empaquetado
Antes de subir los archivos al gestor del CPanel, aplicamos buenas prácticas de optimización para producción utilizando la terminal [03:36]:
- Comandos de Consolidación: Ejecutamos limpiezas profundas de caché, vistas, rutas y optimización de carga de clases (php artisan optimize:clear y derivados).
- Higiene de Directorios (Bootstrap Cache): Eliminamos manualmente los archivos temporales dentro de bootstrap/cache/ (como config.php y services.php), ya que estos almacenan rutas absolutas del entorno local que causan fallas al arrancar en el hosting [04:20].
- Protección del Entorno (.env): Al comprimir el proyecto en formato .zip, excluimos deliberadamente el archivo .env local [04:53]. De esta forma, protegemos los accesos del servidor real (credenciales de base de datos de producción y claves SMTP) evitando que sean sobrescritos [04:47].
🌐 3. Extracción y Ajuste del Entorno en el Hosting (CPanel)
Subimos el paquete comprimido al directorio raíz del servidor mediante la interfaz web del Administrador de Archivos [06:21]:
- Descompresión en Caliente: Extraemos el archivo .zip directamente en el hosting (proceso estandarizado para el 90% de los proveedores como Hostinger, A2Hosting, etc.) [08:16].
- Resolución del Error de Entorno (Versión de PHP): Durante la primera prueba el sistema reportó una incompatibilidad. Lo solucionamos de inmediato desde el panel del hosting, actualizando la versión de ejecución a PHP 8.3 [09:08]. El sistema reaccionó al instante, cargando el formulario de Login de forma fluida y veloz.
¡Con esta lección damos por finalizado oficialmente nuestro Curso del Sistema para Farmacia! El demo ya se encuentra público, en producción, con la seguridad de roles adaptativa y el control de borrado seguro funcionando perfectamente. Muchas gracias a toda la comunidad por sus likes, comentarios y apoyo en Hilari Lara Stack. ¡Nos vemos en el próximo gran curso del canal! ¡Chao chao!
Lecciones
Apoya este proyecto
Si te gusta nuestro contenido, ¡apóyanos con una donación!
Donar por Airtm Donar por Binance¡Gracias por tu apoyo! ❤️