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.