Instalación

Instalación

Creating a Laravel Project

Antes de crear tu primer proyecto en Laravel, asegurate que tu maquina local tiene PHP y Composer instalados. Si estas desarrollando en macOS, PHP y Composer pueden ser instalados via Laravel Herd.. Recomendamos instalar node y npm.

Después de instalar Php y Composer, puedes crear un proyecto a través de composer con:

**composer create-project laravel/laravel:^11.0 example-app**

O puedes crear un proyecto instalando el instalador de laravel de manera global:

**composer global require laravel/installer laravel new example-app**

Una vez el proyecto ha sido creado, puedes lanzar el servidor local de laravel con:

**cd example-app
php artisan serve**

Una vez lanzado el servidor de desarrollo la aplicación estará disponible en http://localhost:8000. Por otro lado vas a necesitar configurar la base de datos.

Initial configuration

Todos los archivos de configuración están en config, quizas quieras revisar config/app.php y su documentación. Contiene opciones importantes como el timezone y locale que puedes desear cambiar en tu aplicación.

Environment based configuration

Como la configuración puede variar de un entorno a otro (prod, local, etc) mucha configuración importante esta definida en el .env. El .env no se sube a los repositorios.

Database and migrations

En el .env estará definida las variables necesarias para conectarse a una base de datos. Se pueden cambiar dependiendo de la base de datos a la que nos queremos conectar.

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=

Si estamos usando sail, el host es el nombre del contenedor de docker

Por ultimo para correr las migraciones

php artisan migrate

Si estas desarrolando en macOS y necesitas instalar Mysql, Postgres, Redis considera usar DBngin

Laravel siempre debe servirse desde la raíz del “directorio web” configurado para su servidor web. No debe intentar servir una aplicación Laravel desde un subdirectorio del “directorio web”. Intentar hacerlo podría exponer archivos confidenciales presentes dentro de su aplicación.

Docker installing using sail

Laravel proporciona Sail, una solución integrada para ejecutar su proyecto Laravel utilizando Docker. Para empezar solamente necesitas docker desktop

¿Ya eres un experto en Docker? ¡No te preocupes! Todo lo relacionado con Sail se puede personalizar utilizando el archivo docker-compose.yml incluido con Laravel.

Sail on mac

Si ya tienes instalado Docker desktop y estas desarrollando en mac puedes ejecutar en la terminal el siguiente comando para crear un proyecto de laravel que creará los contenedores que tu aplicación necesita

curl -s "https://laravel.build/example-app" | bash

Cambiar el nombre de example-app por el nombre de la aplicación.

Una vez terminada la instalación:

sail up se encargará de levantar los contenedores como si de un docker compose up se tratará

cd example-app
 
./vendor/bin/sail up

Sail on windows

Asegurate de tener Docker desktop. Después necesitas el windows subsystem for windows WSL2 para correr los binarios de linux ejecutables en windows.

Después de instalar Docker desktop y WSL2 tienes que asegurarte de que docker desktop esta configurado para usar WSL2 backend(configured to use the WSL2 backend.)

Abre una terminal de WSL2 y ejecuta:

curl -s https://laravel.build/example-app | bash

Navegar a la carpeta y levantar los contenedores y correr las migraciones

cd example-app
 
./vendor/bin/sail up

./vendor/bin/sail artisan migrate

Para poder modificar los archivos que se han creado dentro de WSL2 tendras que usar un editor como visual studio code con la extension de remote development(Remote Development.)

Sail on linux

Si estas desarrollando en linux y docker compose ya esta instalado(Docker Compose).

Si estas usando docker desktop corre el siguiente comando

docker context use default

Despues corre

curl -s https://laravel.build/example-app | bash

y el ultimo paso como en todas las demas instalaciones

cd example-app
 
./vendor/bin/sail up

./vendor/bin/sail artisan migrate

Choosing your sail services

Podemos pasarle el queryParam with para indicar los servicios que qeremos que instale

curl -s "https://laravel.build/example-app?with=mysql,redis" | bash

Si no especifica qué servicios desea configurar, se configurará una pila predeterminada de mysql, redis, meilisearch, mailpit y selenium.

Puede indicarle a Sail que instale un Devcontainer predeterminado agregando el parámetro devcontainer a la URL.

curl -s "https://laravel.build/example-app?with=mysql,redis&devcontainer" | bash

IDE

Eres libre de utilizar cualquier editor de código que desees al desarrollar aplicaciones Laravel; sin embargo, PhpStorm ofrece un amplio soporte para Laravel y su ecosistema, incluido Laravel Pint.

Además, el complemento Laravel Idea PhpStorm, mantenido por la comunidad, ofrece una variedad de útiles aumentos de IDE, que incluyen generación de código, finalización de sintaxis de Eloquent, finalización de reglas de validación y más.