Implementar un proyecto Laravel usando Envoy
Laravel Envoy es una herramienta para ejecutar tareas comunes que ejecuta en sus servidores remotos. Con la sintaxis de estilo Blade, puede configurar fácilmente tareas para implementación, comandos Artisan y más. Actualmente, Envoy solo es compatible con los sistemas operativos Mac y Linux. Sin embargo, el soporte de Windows se puede lograr usando WSL2.
Requisitos:
- git remoto usando ssh
- cuenta ssh
Configurar el servidor de producción
- Conectar al servidor
Crea un nuevo usuario
- sudo adduser deployer (puede omitir si es un usuario aleardy)
Crea un nuevo usuario
- ssh-keygen -f gitlab
Debemos crear la clave ssh en el servidor porque para extraer el repositorio sin contraseña en el servidor
Copiar archivo a floder ~ / .ssh
cp gitlab.pub ~ / .ssh / id_rsa.pub
cp gitlab ~ / .ssh / id_rsa
Copie el servidor pubkey ssh a gitlab usando el comando.
cat ~ / .ssh / id_rsa.pub
Copiar texto del archivo ~ / .ssh / id_rsa.pub
A cuenta de gitlab (https://gitlab.com/-/profile/keys)
Primero, instale Envoy en su proyecto usando el administrador de paquetes Composer:
composer require laravel/envoy --dev
Después de eso, cree el archivo en el proyecto raíz.
Crear archivo Envoy.blade.php
@servers(['sulaeman' => '[email protected]']) @setup $repo = '[email protected]:username/nameproject.git'; $branch = 'staging'; @endsetup @story('deploy') admin @endstory @task('admin') cd /home/sulaeman/rumahsehat git pull origin {{ $branch }} php artisan migrate --force php artisan db:seed @endtask
Ejecutar usando
Envoy ejecutar desplegar