Найти в Дзене

Laravel - подготовка компьютер для разработки

Давайте научимся работать с Laravel. Представим - у вас чистый компьютер с OS Windows, к примеру 10, и вы хотите создать и запустить свой проект на php фреймворке Laravel (текущая версия 8, скоро выйдет 9) Можно использовать doker, можно установить виртуалку linux к себе на компьютер и еще много чего. Тут же я опишу свой workflow, возможно кому-то будет полезно. План: Устанавливаем IDE PhpStorm IDE PhpStorm Скачиваем IDE PhpStorm https://www.jetbrains.com/phpstorm/ Скачиваем нажатием Download now Устанавливаем. OpenServer Можно скачать с официального сервера Или быстрее вот так magnet:?xt=urn:btih:7787A633C35B0B265551035277351C207FD91EFF Устанавливаем. Устанавливаем composer Скачиваем и устанавливаем пакетный менеджер composer https://getcomposer.org/Composer-Setup.exe Выбираем php из OpenServer, папка modules/php/php8.1 Перезагрузим компьютер. Включаем Open Server, открываем настройки. Заходим в домены и включаем управление доменами - ручное управление В открывшейся папке domain
Оглавление

Давайте научимся работать с Laravel.

Представим - у вас чистый компьютер с OS Windows, к примеру 10, и вы хотите создать и запустить свой проект на php фреймворке Laravel (текущая версия 8, скоро выйдет 9)

Можно использовать doker, можно установить виртуалку linux к себе на компьютер и еще много чего. Тут же я опишу свой workflow, возможно кому-то будет полезно.

План:

Устанавливаем IDE PhpStorm

IDE PhpStorm

Скачиваем IDE PhpStorm https://www.jetbrains.com/phpstorm/

Сайт Jetbrains
Сайт Jetbrains

Скачиваем нажатием Download now

Устанавливаем.

OpenServer

Можно скачать с официального сервера

Или быстрее вот так

magnet:?xt=urn:btih:7787A633C35B0B265551035277351C207FD91EFF
-3

Устанавливаем.

Устанавливаем composer

Скачиваем и устанавливаем пакетный менеджер composer

https://getcomposer.org/Composer-Setup.exe

-4

Выбираем php из OpenServer, папка modules/php/php8.1

-5

Перезагрузим компьютер.

Включаем Open Server, открываем настройки.

-6

Заходим в домены и включаем управление доменами - ручное управление

-7

В открывшейся папке domain создаем новую папку с нашим проектом

В моем случае это test_laravel, выбираем ее открываем. В имя домена я вписываю laravel.test

Нажимаем кнопку "Добавить"

Во вкладке "Модули" выбираю следующую конфигурацию

-8

Нажимаем сохранить.

Открываем PhpMyAdmin

-9

Вводим Пользователь - root , Пароль - root или пустой. (встречается и то и то.)

-10

Создаем базу данных, называем ее и выбираем кодировку utf-8 general_ci

-11

Заходим в консоль Open Server

-12

Командная строка

Базовые команды, которыми я пользуюсь:

  • перейти в каталог выше
cd ..
  • переход в другую папку
cd *название папки, относительный или абсолютный путь*
cd /domains
  • переход на другой диск
*буква диска*:
d:
  • Посмотреть весь каталог: список файлов и папок.
dir

Для автоматической подстановки названий папок и файлов можно использовать клавишу TAB

Установка Git

Какая разработка сейчас без использования системы контроля версий.

Скачиваем GIT https://git-scm.com/downloads

-13

Устанавливаем.

-14

При установке никакие флажки и галочки я не меняю.

Создание проекта Laravel

И так, переходим в папку test_laravel

Пишем

composer create-project laravel/laravel .

Точка в конце позволяет создать проект в текущей папке.

Если появится сообщение, что папка не пуста, зайдите в нее и удалите содержимое.

Начнется установка.

Открываем папку в PHP Storm

-15

Работа с PHP Storm

Нам откроется наш проект.

-16

В окне мы увидим файлы нашего проекта, кнопку терминала, и видим в правом углу, что происходит индексация проекта.

Открываем терминал в Шторме и пишем

php artisan serve
-17

Переходим по ссылке http://127.0.0.1:8000/

Видим что-то похожее

-18

Ура, всё работает.

Если мы хотим перейти по домену, созданному через OpenServer то создаем файл .httpaccess в корне проекта со следующим содержимым:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*)$ public/$1 [L]
</IfModule>

Теперь редактируем .env файл конфигурации Laravel. В соответствии с названием вашей БД, логином и паролем. У меня это выглядит так:

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

Пока мы разрабатываем на локальном сервере

APP_ENV=local
APP_DEBUG=true
APP_URL=http://localhost

Выполняем команду

php artisan migrate --seed

Если увидите надпись - Database seeding completed successfully. Всё получилось.

Настроим Github

Давайте создадим локальный репозиторий git в своём проекте.

Пишем

git init
-19

В папке с проектом появится скрытая папка git.

-20

Давайте создадим первый commit.

Для этого мы пишем в консоли, вписывая свои данные.

git config --global user.email "you@example.com"
git config --global user.name "Your Name"

git add .
git commit -m "initial commit"

Мы сделали первый коммит! Поздравляю!

Теперь давайте отправим наш репозиторий в GitHub!

Регистрируемся в Github.com

Настроим SSH для Github

В консоли пишем

ssh -T git@github.com

Соглашаемся на вопрос - yes

Если высвечивается

git@github.com: Permission denied (publickey).

Продолжаем идти по инструкции. Пишем в консоль, вписывая свой e-mail

ssh-keygen -t ed25519 -C "your_email@example.com"
eval "$(ssh-agent -s)"

Далее смотрим в консоли по какому пути сгенерировался ключ и вписываем его в следующую компанду

start-ssh-agent

ssh-add ~\.ssh\id_ed25519

У меня это выглядело так

ssh-add C:\Users\admin\.ssh\id_ed25519

Далее

start-ssh-agent

или

start ssh-agent

У меня получилось вот так:

-21

Пишем cat и адрес сгенерированного вами ранее сертификата. С расширением .pub - это наш публичный ключ.

сat C:\Users\admin\.ssh\id_ed25519.pub

Копируем то, что нам вывелось в консоли весь текст вместе с ssh-ed и вашим email в конце.

-22

Заходим в настройки - Settings

-23

Далее в SSH and GPG keys, нажимаем New SSH key

-24

Пишем название любое, какое захотите и вставляете строчку, с публичным ключом. Сохраняем.

Теперь опять пишем в консоли

ssh -T git@github.com
-25

Ура, все получилось!

Создадим репозиторий на Github

Далее нажимаем на плюсик справа сверху, нажимаем создать новый репозиторий.

-26

Я создам публичный репозиторий, то есть его смогут увидеть все. Так же можно сделать и бесплатный приватный репозиторий.

-27

Открывается страница репозитория.

-28

Теперь вы можете отправить свой локальный репозиторий на Github

git remote add origin git@github.com:*ваш логин github*/*Ваш созданный репозиторий*.git

К примеру

git remote add origin git@github.com:lesha/laravel_test_dzen.git
git push

Появится надпись

git push --set-upstream origin master

Вписываем ее в командную строку и отправляем.

Заходим на страницу нашего репозитория в GitHub и видим наш проект.

Отлично! Все работает, наш проект появился на Github!

Давайте обратим внимание на наш файл .gitignore в репозитории Laravel

-29

В нем перечислены все файлы и папки, которые не будут версироваться и присутствовать в git репозитории.

Как мы видим, наш файл с локальной конфигурацией .ENV нужен исключительно на локальной машине, поэтому мы его не добавляем в git. Так же в нем могут использоваться приватные ключи, доступы к внешним API, поэтому никогда не вписывайте какие-то чувствительные данные в проекте кроме файла ENV и не забывайте проверять добавлен ли он в gitignore.

Резюме

И так, мы научились с нуля разворачивать простую среду разработки на новом компьютере, установили пакетный менеджер composer, установили и настроили Git, установили локальный сервер со всем, что нам может быть полезным.

Конечно, оптимально иметь такое окружение в doker контейнере, но это предмет моих следующих статей.