• Время чтения ~0 мин
  • 23.02.2024

В этом посте мы увидим, как настроить окружение Laravel с помощью Docker, Devcontainer и отладить его с помощью Xdebug. Мне нравится использовать Docker в своей среде разработки, потому что он прост в настройке и согласован на разных компьютерах. С помощью devcontainer мы можем использовать ту же среду в Visual Studio Code, а Xdebug является обязательным для отладки.

Начнем с создания нового проекта Laravel с помощью sail (Docker). На компьютере должны быть установлены Docker и Docker Compose. Если у вас его нет, вы можете установить его, следуя инструкциям на официальном сайте.

Вы можете изменить 'example-app' на другое имя.
Откройте проект в Visual Studio Code, и вам будет предложено повторно открыть проект в devcontainer. Нажмите на кнопку «Повторно открыть в контейнере» и подождите, пока контейнер будет построен. Ход выполнения можно проверить в правом нижнем углу Visual Studio Code.

После включения VSCode вы установите расширение devcontainer.
Вы заметите эту папку .devcontainer в корне проекта. devcontainer folder

Вы можете установить расширение, нажав на значок расширений на боковой панели и выполнив поиск vscodeextensioninstall

Вот мой .devcontainer/.devcontainer.json Я использую расширения php inteliphense и xdebug. Файл:

1) Вам нужно изменить docker-compose.yml, чтобы добавить новый порт для xdebug. 2) Измените контекст и добавьте копию vendor/laravel/sail/runtimes/8.3


Добавьте следующие строки в docker-compose.yml файл

: 3) Мне нравится настраивать Dockerfile и добавлять свои настройки, такие как установить некоторое программное обеспечение: sudo curl, git, git cli и nano, а также изменить пользователя 'sail' на sudo.
Поместите код в нужное место.
В .devcontainer/vendor-example/laravel/sail/runtimes/8.3/Dockerfile Ваш Dockerfile

будет выглядеть следующим образом:Dockerfile
4) Добавьте этот код в php.ini

5) Мне нравится настраивать командную строку bash так, чтобы она показывала мою ветку git и текущий каталог.
Измените файл start-container

6) Создайте конфигурацию отладки в VSCode. .vscode/launch.json

7) Проверьте переменные окружения в файле .env .


После установки расширения вы можете открыть палитру команд (Ctrl+Shift+P) и ввести 'Remote-Containers: Reopen in Container'. Это создаст контейнер и откроет проект внутри него. Или же появится кнопка в правом нижнем углу окна.

Теперь вы можете запустить контейнер и отладить свое приложение Laravel. Вы можете задать точку останова в коде и запустить конфигурацию отладки в Visual Studio Code. Ход выполнения можно проверить в правом нижнем углу Visual Studio Code.
Чтобы открыть приложение, используйте браузер с URL localhost.

Убедитесь, что на порту 80 не запущена другая служба.

devcontainer folder

Comments

No comments yet
Yurij Finiv

Yurij Finiv

Full stack

Про мене

Professional Fullstack Developer with extensive experience in website and desktop application development. Proficient in a wide range of tools and technologies, including Bootstrap, Tailwind, HTML5, CSS3, PUG, JavaScript, Alpine.js, jQuery, PHP, MODX, and Node.js. Skilled in website development using Symfony, MODX, and Laravel. Experience: Contributed to the development and translation of MODX3 i...

Об авторе CrazyBoy49z
WORK EXPERIENCE
Контакты
Ukraine, Lutsk
+380979856297