Comandos de Laravel Artisan por SSH: guía completa
Comandos de Laravel Artisan por SSH: guía completa
Artisan es la interfaz de línea de comandos de Laravel con la que automatizas tareas habituales. En esta guía aprenderás todos los comandos importantes de Artisan que puedes usar por SSH en tu hosting.
Qué es Artisan
Artisan viene integrado en Laravel y ofrece:
- Migraciones y gestión de la base de datos
- Gestión de la caché
- Generación de código (comandos make)
- Gestión de colas y trabajos
- Modo de mantenimiento
- Mucho más mediante comandos personalizados
Conectarse por SSH
Antes de poder usar Artisan, conéctate por SSH.
Conectarse
ssh gebruikersnaam@example.nl
# O con un puerto específico
ssh -p 7777 gebruikersnaam@server.theory7.net
Ir a tu proyecto
cd ~/domains/example.nl/project
Probar Artisan
php artisan --version
# Salida: Laravel Framework 11.x.x
php artisan list
# Muestra todos los comandos disponibles
Comandos de caché
La gestión de la caché es esencial para el rendimiento.
Vaciar todas las cachés
# Vaciar todas las cachés a la vez
php artisan optimize:clear
Esto combina:
- config:clear
- route:clear
- view:clear
- cache:clear
Caché de configuración
# Almacenar la configuración en caché
php artisan config:cache
# Vaciar la caché de configuración
php artisan config:clear
Atención: después de config:cache, .env ya no se lee directamente. Para aplicar los cambios hay que volver a generar la caché.
Caché de rutas
# Almacenar las rutas en caché
php artisan route:cache
# Vaciar la caché de rutas
php artisan route:clear
Acelera considerablemente la resolución de rutas.
Caché de vistas
# Precompilar todas las vistas Blade
php artisan view:cache
# Vaciar la caché de vistas
php artisan view:clear
Caché de la aplicación
# Vaciar la caché de la aplicación
php artisan cache:clear
# Con un almacén específico
php artisan cache:clear --store=file
Optimización para producción
# Almacenar todo en caché para producción
php artisan optimize
# O de forma detallada
php artisan config:cache
php artisan route:cache
php artisan view:cache
Comandos de base de datos
Gestiona la estructura y los datos de tu base de datos.
Migraciones
# Ejecutar las migraciones pendientes
php artisan migrate
# Con force para producción
php artisan migrate --force
# Revertir el último lote
php artisan migrate:rollback
# Revertir un número específico
php artisan migrate:rollback --step=3
# Restablecer todas las migraciones
php artisan migrate:reset
# Restablecer y volver a ejecutar (¡destructivo!)
php artisan migrate:fresh
Seeding de la base de datos
# Ejecutar todos los seeders
php artisan db:seed
# Seeder específico
php artisan db:seed --class=UserSeeder
# Migración desde cero con seeding
php artisan migrate:fresh --seed
Estado de las migraciones
# Ver el estado de las migraciones
php artisan migrate:status
Volcado del esquema
# Volcar el esquema a SQL
php artisan schema:dump
# Con eliminación de las migraciones antiguas
php artisan schema:dump --prune
Comandos make
Genera código rápidamente con los comandos make.
Controladores
# Controlador básico
php artisan make:controller UserController
# Controlador de recursos (CRUD)
php artisan make:controller PostController --resource
# Controlador de API
php artisan make:controller Api/ProductController --api
Modelos
# Modelo básico
php artisan make:model Post
# Con migración
php artisan make:model Post -m
# Con todo (migration, factory, seeder, controller)
php artisan make:model Post --all
Migraciones
# Migración nueva
php artisan make:migration create_posts_table
# Cambio en una tabla existente
php artisan make:migration add_status_to_posts_table --table=posts
Otros recursos
# Validación de solicitudes
php artisan make:request StorePostRequest
# Middleware
php artisan make:middleware AuthenticateAdmin
# Evento y listener
php artisan make:event OrderShipped
php artisan make:listener SendOrderNotification
# Job
php artisan make:job ProcessPodcast
# Mail
php artisan make:mail OrderConfirmation
# Notificación
php artisan make:notification InvoicePaid
Comandos de colas
Gestiona los trabajos en segundo plano.
Queue worker
# Iniciar el queue worker
php artisan queue:work
# Con una conexión específica
php artisan queue:work database
# Con límite de tiempo y de memoria
php artisan queue:work --timeout=60 --memory=128
# Procesar solo N trabajos
php artisan queue:work --once
php artisan queue:work --max-jobs=100
Gestión de colas
# Ver los trabajos fallidos
php artisan queue:failed
# Reintentar un trabajo fallido
php artisan queue:retry {id}
php artisan queue:retry all
# Eliminar un trabajo fallido
php artisan queue:forget {id}
php artisan queue:flush # Todos los trabajos fallidos
# Reiniciar los workers (después de un cambio de código)
php artisan queue:restart
Modo de mantenimiento
Pon tu sitio temporalmente fuera de línea.
Activar
# Modo de mantenimiento básico
php artisan down
# Con un mensaje personalizado
php artisan down --message="We zijn zo terug!"
# Con cabecera de reintento (segundos)
php artisan down --retry=60
# Permitir IP específicas
php artisan down --allow=123.456.789.0
# Con una URL secreta de acceso
php artisan down --secret="bypass-token"
Con secret puedes ver el sitio en:
https://example.nl/bypass-token
Desactivar
php artisan up
Comandos de depuración
Comandos prácticos para depurar.
Ver las rutas
# Mostrar todas las rutas
php artisan route:list
# Filtrar por nombre
php artisan route:list --name=admin
# Filtrar por método
php artisan route:list --method=GET
Información del entorno
# Mostrar el entorno actual
php artisan env
# Cifrar los valores de .env
php artisan env:encrypt
Tinker (REPL)
# Iniciar la shell interactiva
php artisan tinker
# En tinker:
> User::count()
> User::find(1)
> App::environment()
Comandos de schedule
Gestiona las tareas programadas.
Ejecutar el schedule
# Ejecutar el scheduler manualmente
php artisan schedule:run
# Ver las tareas programadas
php artisan schedule:list
# Probar un comando específico
php artisan schedule:test
Schedule en una tarea cron
Añade a crontab:
* * * * * cd /path/to/project && php artisan schedule:run >> /dev/null 2>&1
Comandos de almacenamiento
Gestiona el almacenamiento y los archivos.
Enlace de almacenamiento
# Crear el enlace público de almacenamiento
php artisan storage:link
# Verificar los enlaces
ls -la public/storage
Limpieza del almacenamiento
Con un comando personalizado o a mano:
# Eliminar los archivos temporales con más de X días
find storage/app/temp -mtime +7 -delete
Comandos de despliegue
Flujo de trabajo típico de despliegue:
# 1. Activar el mantenimiento
php artisan down
# 2. Actualizar las dependencias (si hace falta)
composer install --no-dev --optimize-autoloader
# 3. Migraciones
php artisan migrate --force
# 4. Generar la caché
php artisan config:cache
php artisan route:cache
php artisan view:cache
# 5. Reiniciar los queue workers
php artisan queue:restart
# 6. Desactivar el mantenimiento
php artisan up
Comando de una línea para el despliegue
php artisan down && composer install --no-dev --optimize-autoloader && php artisan migrate --force && php artisan optimize && php artisan up
Comandos personalizados de Artisan
Crea tus propios comandos:
php artisan make:command SendWeeklyReport
Esto crea app/Console/Commands/SendWeeklyReport.php.
¿Necesitas ayuda?
Estamos a tu disposición. ¿Te has encontrado con algún problema o tienes preguntas? Nuestro equipo de soporte te ayuda encantado de forma personal. Envíanos un mensaje a través del sistema de tickets: solemos responder en unas horas y buscamos contigo la mejor solución.
¿Buscas hosting WordPress? Consulta nuestra oferta.
A 0 de 0 personas les ha resultado útil