Instalar Homestead Mediante Vagrant
Laravel Homestead es una máquina virtual que viene ya preparada para el desarrollo de proyectos con Laravel y otras tecnologías de PHP . Al ser una máquina virtual podremos ejecutar nuestros proyectos sin necesidad de instalar PHP, MySQL, etc. en nuestra máquina local. En esta primera lección de la serie de Laravel Homestead, aprenderás cómo instalar y configurar todo lo que necesitas para poder comenzar a desarrollar tus proyectos con ayuda de Homestead.
Prerrequisitos de instalación
- Tener VirtualBox es la herramienta que nos permite crear máquinas virtuales.
- Vagrant es una manera elegante y sencilla de administrar y provisionar máquinas virtuales, como por ejemplo Laravel Homestead.
¿Que es Virtualbox?
VirtualBox es un software gratuito y de código abierto que permite ejecutar máquinas virtuales en tu ordenador de sobremesa o portátil. Por ejemplo, puedes ejecutar sistemas operativos Linux o Mac y viceversa en tus máquinas Windows sin problemas utilizando el software VirtualBox.
Hay otras opciones como VMWare, Parallels o Hyper-V, pero puede que no sean gratuitas o fáciles de configurar.
¿Que es Vagrant?
Es una herramienta que permite construir entornos de desarrollo de forma rapida y sencilla, para esto utiliza la tecnología de virtualización. La idea es aprovisionar una maquina virtual con todo el setup necesario para desplegar aplicaciones en local, vagrant aísla las dependencias y la configuración en un entorno consistente y desechable, esto ultimo se refiere a que podemos eliminar un entorno y levantarlo de nuevo en cuestión de minutos, si rompemos todo el setup por instalar o configurar algo mal, con vagrant esto ya no es un problema.
maquinas virtuales se conocen como ‘Boxes‘, podemos crearlas desde cero o mejor aun, descargarlas desde el variado catalogo que tiene vagrant, tan solo es descargar el entorno y con un par de comandos la maquina va estar corriendo en el sistema de forma transparent
Empezemos!
Como Instalar Laravel Homestead en Windows 10
1.Configurar la Bios
Necesitas habilitar la virtualización por hardware ( VT-x ) en tu ordenador, y puedes activarlo a traves de la BIOS de tu ordenador.
Por cierto, Hyper-V debe estar desactivado para que VT-x funcione. Para desactivar Hyper-V, ve al panel de control y escribe "Activar o desactivar características de Windows", luego busca Hyper-V en la lista y desactívalo.
2. Instalar Git Bash
Necesitas habilitar la virtualización por hardware ( VT-x ) en tu ordenador, y puedes hacerlo en la BIOS de tu ordenador.
Si ya tienes un GIT disponible en tu terminal, entonces puedes saltarte este paso. De lo contrario, Instala GIT , descárguelo e instálelo. Hay un montón de opciones disponibles a lo largo de la instalación, pero deja todo como está a menos que sepas lo que haces. desactívalo.
3.Instalar Vagrant
Estoy usando Vagrant 2.2.6_x86 para este tutorial de Homestead. Descárgalo desde aquí e instálalo en tu máquina Windows, la configuración es sencilla.
4.Instalar Virtualbox
Para la provisión de mis máquinas virtuales, estoy utilizando VM VirtualBox 6.0.14 de Oracle para este tutorial, ya que es totalmente gratuito. Descárguelo desde aquí e instálelo.
5. Añadir Homestead Laravel
Antes de proceder a este paso, asegúrate de que tienes instalado Visual C++ Package 2015
Después de esto, añade la caja de Homestead a la instalación de tu Vagrant. Luego abre la terminal y escribe este comando. Ten paciencia, porque estarás descargando esta caja vagrant a través de internet.
vagrant box add laravel/homestead
6. Descargar Homestead
Ahora es el momento de descargar la máquina Homestead desde Github. Voy a almacenar mi máquina de Homestead aquí - C:NUsers$USERServerNHomestead. Usted puede utilizar la misma ruta, también.
Abre tu terminal. Una vez que abra el Git Bash, usted debe estar en el directorio de la raíz, que es por lo general - C:$Users$USER para Windows. Este símbolo ~ en la máquina de Windows 10 por defecto representa esta ruta C:Users$USER.
Cree una carpeta Server allí usando mkdir, salte dentro de ella con el comando cd, y descargue Homestead desde GitHub usando git clone $url. Después de eso, vaya dentro de la carpeta de Homestead y elija la rama de lanzamiento con git checkout release, a menos que desee una versión inestable de Homestead.
mkdir Server cd Server git clone https://github.com/laravel/homestead.git Homestead cd Homestead git checkout release
Después de eso, utilice bash init.sh (en el caso de que estes utilizandos Linux / Mac) e init.bat (para CMD o PowerShell) para inicializar el archivo de configuración de Homestead.
7. Crear una Clave SSH
Si ya tienes una clave SSH generada, entonces puedes saltarte totalmente este paso. De lo contrario, vamos a crear una.
Esto es sencillo si estás usando la terminal Git Bash. Ábrelo y escribe ssh-keygen -o. Luego sigue la configuración. Yo suelo usar el directorio por defecto, y prefiero dejar la frase de paso vacía.
8.Configurar Homestead
Antes de seguir adelante, asegúrese de que ya ha creado un directorio de código en C:N-USERN-Code. Después de eso, abra el archivo Homestead.yaml, que se encuentra dentro del directorio de su servidor Homestead. Puedes usar cualquier editor de archivos que prefieras, pero yo usaré nano en mi terminal Git Bash. Puedes utilizar cualquiera de tus editores de código favoritos como Atom o VSC para editar este archivo.
Si tienes menos de 8 GB de RAM en tu sistema, entonces te sugiero que reduzcas la memoria asignada al servidor de Homestead a 1024 MB.
No voy a cambiar las líneas de autorización y clave, porque mis claves SSH ya están almacenadas en el directorio ~/.ssh. Las tuyas probablemente también lo estén, si no, adapta esto a tus necesidades.
A continuación, asignaré el directorio C:NUsers$USERCode en Windows, a /home/vagrant/code en la máquina virtual de mi Homestead. Esto significa que esta carpeta será compartida en estas 2 máquinas. Todo lo que ponga en mi máquina Windows dentro de la carpeta Code estará inmediatamente disponible para la máquina virtual de mi Homestead.
Luego agregaré 2 sitios: ismael.test y dashboard.test. Se almacenarán dentro de los directorios /home/vagrant/code/$site en mi máquina Homestead. Por lo tanto, en Windows, voy a ser capaz de acceder y editar los archivos de la página web aquí - C:N-UsersN-USERCodeN-sitio.
En el siguiente paso, añadiré 2 bases de datos, que se llamarán ismaelrak y dashboard.
Así es como se ve mi Homestead.yaml final:
--- ip: "192.168.10.10" memory: 2048 cpus: 2 provider: virtualbox authorize: ~/.ssh/id_rsa.pub keys: - ~/.ssh/id_rsa folders: - map: ~/Code to: /home/vagrant/code sites: - map: ismael.test to: /home/vagrant/code/ismael/public - map: dashboard.test to: /home/vagrant/code/dashboard/public databases: - ismael - dashboard features: - mariadb: false - ohmyzsh: false - webdriver: false # ports: # - send: 50000 # to: 5000 # - send: 7777 # to: 777 # protocol: udp
Tenga en cuenta que cada espacio y símbolo importa aquí. Si te equivocas, entonces Vagrant no podrá procesar el archivo de configuración Homestead.yaml.
9. Instalar Laravel
Si todo ha ido bien y no tienes ningún error en el terminal, entonces ve al directorio de Homestead y entra en tu máquina virtual.
vagrant ssh
Luego dirígete al directorio de código usando cd (si no hay un directorio presente allí, entonces créalo con el comando mkdir). Después de esto, crea una aplicación Laravel con laravel new $nombredelsitio. Esto creará un directorio llamado $nombredelsitio e instalará tu aplicación web Laravel dentro. Esto puede llevar algún tiempo.
laravel new ismael laravel new dashboard
Después de eso, ambas aplicaciones web deberían ser accesibles en este enlace http://$nombredelsitio.test. Por ejemplo, en mi máquina virtual, están disponibles aquí: http://ismael.test y http://dashboard.test. Si algo no funciona, entonces prueba la sección de solución de problemas más abajo.