Блог на Laravel 5 (часть 0) Настройка окружения в Mac/Linux
Настройка Composer
Этот урок - короткая инструкция для пользователей Mac/Linux. Если Вы работаете в Windows 10, то почитайте статью Рабочее окружение веб-программиста в Windows о том, как нужно настраивать вашу систему для разработки на Laravel.
Откройте терминал и перейдите к своей пользовательской директории, например
cd /User/<USER_NAME>/Запустите команду ниже для скачивания Composer. Эта команда создаст Phar (PHP Archive) файл с названием composer.phar:
curl -sS https://getcomposer.org/installer | php
Теперь переместим composer.phar в директорию /usr/local/bin/ и выставим этому файлу права, чтобы его можно было каждый раз спокойно запускать без суперпользователя:
sudo mv /usr/local/bin/composer.phar /usr/local/bin/composer #перекидываем в другую папку и переименовываем composer
Все, приведенное выше можно было выполнить одной командой:
php composer-setup.php --install-dir=/usr/local/bin --filename=composer
Меняем права к composer:
sudo chmod 755 /usr/local/bin/composer
Важно! Переименовывать composer.phar -> composer нужно обязательно
Создание алиаса для Composer
Далее, укажем алиас для Composer:
nano ~/.bash_profile
Эта команда откроет в редакторе Nano файл, где можно задавать пользовательские настройки. Добавим туда строку:
alias composer="php /usr/local/bin/composer"
и далее запустим эту команду для того, чтобы наши изменения начали работать:
source ~/.bash_profile
Проверим нашу работу запустив в терминале:
composer --version
Если вы увидите такую картинку, значит все работает правильно. Composer установлен.
Установка Laravel installer'а
Запускаем команду в терминале:
composer global require laravel/installer
У меня появилась ошибка:
laravel/installer v3.0.1 requires ext-zip * -> the requested PHP extension zip is missing from your system.
Выясняем какая версия php у нашей системы:
php --v
# выяснил, что версия 7.3.9
brew install php@7.3
brew link php@7.3
Для пользователей Linux будет команда:
#ставлю поэтому такую же версию zip как и версия php
sudo apt-get install php7.3-zip
После этого было еще куча сообщений о проблеме с symphony/console. Пришлось перейти в папку .composer/ удалить composer.json.lock и папку vendor/symfony/filesystem/. После всего этого указал версию в composer.json:
{
"require": {
"symfony/filesystem": "^5.0",
"laravel/installer": "^3.0"
}
}
Снова запустил composer global require laravel/installer и всё заработало:
Важно: Обратите внимание, что в вашем профиле для шелла должен быть указан путь к composer:
Создание приложения на Laravel
Создадим наше приложение под именем blog. Запустите в терминале команду:
laravel new blog
У вас должна создаться директория с файлами и произойти запуск composer'a
Настройка сайта
После этого нужно скопировать файл с примерами настроек .env.example -> .env
cd blog/ && cp .env.example .env
Далее генерируем уникальный ключ для нашего приложения:
php artisan key:generate
Далее в зависимости от вашей системы Windows/Linux/Mac вам нужно будет стартовать локально сервер. Я рассмотрю 2 варианта: в Мак с помощью valet и в Линукс с помощью artisan:
Установка Valet
Установим Valet для удобной работы в Мак:
composer global require laravel/valet
Перейдем в нашей рабочей директории запустим valet
valet install # запуск и проверка работы valet
valet link # создание симлинки на наш сайт, чтобы можно было открыть его по ссылке valet.test
valet restart # перезапуск Valet
Все, теперь сайт должен отрыться по ссылке http://blog.test
Запуск локально сервера с помощью Artisan
В рабочей папке blog запускаете команду:
php artisan serve
Artisan сработает и запустит сайт по-умолчанию на локалхосте:
Установка базы данных
Для простоты использовал обычную mysql установку:
brew install mysql
mysql.server start #запуск сервера
Альтернативно для тех, кто хочет установить MariaDB (у меня не получилось нормально справиться с maria):
brew uninstall mysql && brew install mariadb # установка
brew services start mariadb # старт MariaDB при каждом запуске ПК
mysql.server start # старт MariaDB один раз
29-01-2020
CLI workflow Laravel
Виктор Матушевский