An open API service indexing awesome lists of open source software.

https://github.com/poymanov/laravel-homestead-how-to

Быстрый запуск приложений с Laravel Homestead
https://github.com/poymanov/laravel-homestead-how-to

homestead howto laravel

Last synced: 3 months ago
JSON representation

Быстрый запуск приложений с Laravel Homestead

Awesome Lists containing this project

README

        

# Laravel Homestead

## Примечание
Здесь представлено краткое руководство как установить **Laravel Homestead** и запустить проект в его среде.
Официальное руководство - https://laravel.com/docs/5.6/homestead

## Описание
**Laravel Homestead** это виртуальная машина с предустановленным набором компонентов для быстрого и удобного запуска web-приложений.

Использует **VirtualBox** и **Vagrant**.

## Установка

Установить [VirtualBox](https://www.virtualbox.org/wiki/Downloads)

Установить [Vagrant](https://www.vagrantup.com/downloads.html)

Загрузить **Laravel Homestead** через командную строку:

```
vagrant box add laravel/homestead
```

Развернуть исходный код в нужной директории:

```
git clone https://github.com/laravel/homestead.git ~/Homestead
```

Инициализировать:

```
bash init.sh
```

## Настройка

В процессе инициализации проекта в корне директории с **Laravel Homestead** был создан файл `Homestead.yaml`.

Именно в нём и происходит настройка окружения.

Необходимо указать, какая директория с локальной машины должна быть доступна внутри виртуальной среды:

```
folders:
- map: ~/project
to: /home/vagrant/code/project
```

`map` - директория, которую необходимо подключить с локальной машины

`to` - путь, по которому она будет доступна внутри виртуальной среды

---

Затем необходимо настроить адрес, по которому проект будет доступен через браузер:

```
sites:
- map: homestead.test
to: /home/vagrant/code/project
```

`map` - домен сайта, по которому будет открываться проект

`to` - директория, в которой внутри виртуальной среды находится проект. Здесь нужно указать путь к директории проекта, где расположен индексный файл проекта (index.php/index.html). Для проекта на Laravel это директория **/public**

---

После этого необходимо настроить БД, которая будет использовать в проекте:

```
databases:
- project
```

Здесь указывается наименование БД (по-умолчанию в MySql), которая будет создана в процессе работы виртуальной среды.
С локальной машины БД будет доступна по ip-адресу, который указан в самом начале файла `Homestead.yaml`:

```
ip: "192.168.10.10"
```

Последняя настройка - необходимо добавить в свой hosts-файл адрес проекта:

```
192.168.10.10 project.test
```

`192.168.10.10` - адрес виртуальной среды из `Homestead.yaml`.
`project.test` - адрес проекта из этого же файл, из блока `sites`

## Запуск

Команда запуска виртуальной среды (выполнять из директории где был развернут Homestead):

```
vagrant up
```

Первый запуск может занять длительное время. Все последующие будут проходить быстрее.

Полная остановка виртуальной среды:

```
vagrant halt
```

Если были внесены изменения в `Homestead.yaml` необходимо заново перезапустить виртуальную среду:

```
vagrant up --provision
```

Войти в виртуальную среду:

```
vagrant ssh
```
---
Для работы с командами Laravel необходимо перейти в директорию проекта внутри виртуальной среды.

Здесь уже будут доступны все необходимые команды: `artisan`, `composer`, `npm`, `phpunit`.

Для команды:

```
php artisan
```

Можно использовать псевдоним:

```
art
```

Чтобы выйти из виртуальной среды нужно выполнить `exit`.