# ¿Cómo despliego mi proyecto Laravel?

https://www.seturack.com/es/base-de-conocimientos/articulo/how-do-i-deploy-my-laravel-project

1. En el panel, abre **Mis servidores** y haz clic en tu servidor.
2. En la pestaña **Resumen**, espera a que la fila **Aplicación** diga "Laravel está listo". La página se actualiza sola.
3. Abre el enlace de la fila **Dirección del sitio**. Verás la página de bienvenida de Laravel.

## Cómo llevar tu propio código

[Conéctate por SSH](https://www.seturack.com/es/base-de-conocimientos/articulo/how-to-connect-with-ssh) y cambia al usuario del proyecto:

`su - app`

`cd /var/www/laravel`

Aquí está el proyecto. Después de copiar tu propio código, ejecuta:

`composer install --no-dev`

`php artisan migrate --force`

`php artisan config:cache`

El archivo `.env` ya está listo, así que no lo sobrescribas. El nombre de la base de datos y el usuario son ambos `laravel`, y la contraseña está en el panel.

## Lo que viene preparado

- El worker de colas es el servicio `laravel-kuyruk`. Ejecuta `systemctl restart laravel-kuyruk` cuando cambie tu código.
- El planificador se ejecuta cada minuto (`/etc/cron.d/laravel`).

## Tu propio dominio

1. Apunta el registro A de tu dominio a la dirección IP de tu servidor.
2. Como root, sustituye el nombre antiguo en todas partes: `sed -i 's/OLD_NAME/yourdomain.com/g' /etc/caddy/Caddyfile`. `OLD_NAME` es la parte posterior a `https://` en la dirección que se muestra en el panel.
3. Ejecuta `systemctl reload caddy`.

Caddy obtiene y renueva el certificado por sí solo.

Actualiza también `APP_URL` en el archivo `.env`. Hacia el exterior solo están abiertos el **80**, el **443** y el **22** para SSH.

**¿Aún no tienes servidor?** [Pide un servidor con Laravel instalado](https://www.seturack.com/es/laravel-vps): tú eliges el tamaño y pagas solo lo que eliges.
