emmanuelh.dev
Published on

Cómo Desplegar Laravel y Proyectos MVC en Domcloud: Guía Paso a Paso

Desplegar un Proyecto Laravel o PHP en DomCloud

Esta guía asume que ya tienes tu proyecto en GitHub.

Proceso de Deploy

1. Ingresar a DomCloud

Ingresa a https://domcloud.co/ y crea una cuenta si aún no tienes una, conectándote con tu cuenta de GitHub o Google.

2. Agregar un Nuevo Sitio Web

Una vez dentro, haz clic en el botón "+Add a website" y luego en "No, I want to start from scratch".

3. Configurar el Proyecto

Aparecerá una página donde deberás borrar el contenido predeterminado en la sección "features" y pegar uno de los siguientes scripts según corresponda:

Script para Laravel

source: <TuRepositorio>
features:
  - mysql
  - ssl
  - ssl always
nginx:
  root: public_html/public
  fastcgi: on
  locations:
    - match: /
      try_files: $uri $uri/ /index.php$is_args$args
    - match: ~ \.[^\/]+(?<!\.php)$
      try_files: $uri =404
commands:
  - cp .env.example .env
  - sed -i "s/DB_HOST=127.0.0.1/DB_HOST=localhost/g" .env
  - sed -ri "s/DB_DATABASE=.*/DB_DATABASE=${DATABASE}/g" .env
  - sed -ri "s/DB_USERNAME=.*/DB_USERNAME=${USERNAME}/g" .env
  - sed -ri "s/DB_PASSWORD=.*/DB_PASSWORD=${PASSWORD}/g" .env
  - sed -ri "s/APP_URL=.*/APP_URL=http:\/\/${DOMAIN}/g" .env
  - composer install
  - php artisan migrate:fresh || true
  - php artisan key:generate
  - php artisan storage:link

Script para Laravel con Livewire v3.0

source: <TuRepositorio>
features:
  - mysql
  - ssl
  - ssl always
nginx:
  root: public_html/public
  fastcgi: on
  locations:
    - match: /
      try_files: $uri $uri/ /index.php$is_args$args
    - match: ~ \.[^\/]+(?<!\.php)$
      try_files: $uri =404
commands:
  - cp .env.example .env
  - sed -i "s/DB_HOST=127.0.0.1/DB_HOST=localhost/g" .env
  - sed -ri "s/DB_DATABASE=.*/DB_DATABASE=${DATABASE}/g" .env
  - sed -ri "s/DB_USERNAME=.*/DB_USERNAME=${USERNAME}/g" .env
  - sed -ri "s/DB_PASSWORD=.*/DB_PASSWORD=${PASSWORD}/g" .env
  - sed -ri "s/APP_URL=.*/APP_URL=http:\/\/${DOMAIN}/g" .env
  - composer install
  - php artisan migrate:fresh || true
  - php artisan key:generate
  - php artisan storage:link
  - php artisan livewire:publish
  - cp -r vendor/livewire/livewire/dist public/livewire

Reemplaza <TuRepositorio> con la URL de tu repositorio en GitHub.

4. Configurar el Nombre de Usuario

En la sección "Username", ingresa el nombre que le darás a tu proyecto. Ten en cuenta que este nombre será único y formará parte de la URL para mostrar tu proyecto.

5. Agregar el Sitio Web

Haz clic en el botón "Add a Website" para iniciar el proceso de deploy.

Configuración Adicional

Si tu proyecto utiliza Breeze para la autenticación o bien, tienes algun cambio en tu archivo .env, deberás configurar esto, ya sea un servicio de correo electrónico como Mailtrap o Brevo. Para ello, accede a Webmin desde la pestaña "Manage" de DomCloud, busca el archivo .env y edita las variables de correo electrónico con tus credenciales.

¡Listo! Tu proyecto Laravel o PHP debería estar desplegado y listo para usar.

Authors