Как создать виртуальную среду веб-разработки и сервер

За последние несколько лет Windows и Mac OSX добились успехов в качестве удобных для разработчиков ОС, но каждый веб-разработчик действительно должен работать в собственной веб-среде, Linux.

В этой статье вы узнаете, как получить лучшее из обоих миров: использовать стабильную и удобную для пользователя ОС, такую ​​как Windows или OSX, для своих повседневных потребностей, а также пожинать плоды разработки в той же экосистеме, что и производственный код.

Вступление

Большая часть Интернета работает на том, что разработчики называют «стеком LAMP». Этот аббревиатура означает Linux, Apache, MySQL, PHP, соединенные вместе и работающие как то, что вы обычно понимаете как веб-сервер. (Тесно связанный стек — или набор технологий — это «LEMP», где «E» происходит от произношения альтернативы Apache, Nginx, которое называется «engine x».)

Вы можете заметить, что Linux здесь явно включен, но не только по этой причине Linux рекомендуется разработчиками. Другие технологии — Apache (или Nginx), MySQL и PHP — имеют разные инструменты и реализации, доступные для разных платформ, но по историческим и техническим причинам конфигурации на основе Linux преобладают в серверном пространстве и имеют тенденцию быть более предсказуемыми.

Как создать виртуальную среду веб-разработки и сервер tux logo 150x150

Предсказуемость и надежность также являются важными причинами, по которым вам нужно разрабатывать операционную систему, которую вы используете исключительно для этой цели — выделенную операционную систему, а не ту, которая поддерживает множество задач, которые вы выполняете ежедневно в качестве веб-разработчика. Другими словами, вы не хотите запускать сервер в той же операционной системе, которую нужно перезагрузить, когда установлены новые графические драйверы, или на машине, которую вам нужно будет упаковать и положить в рюкзак, чтобы поразить дорога с. Одним словом, использование процессов и программного обеспечения, необходимых для запуска сервера на вашем многофункциональном компьютере, является грязным.

Итак, как вы уравновешиваете свою способность к многозадачности с необходимостью разработки в собственном контексте ваших приложений?

Введите виртуальные машины

,

Виртуальные машины и бродяги

Виртуальные машины — это программы, которые запускаются в вашей основной операционной системе. Они эффективно позволяют вам запускать совершенно отдельную операционную систему внутри окна, полностью изолированную и не зависящую от всего, что происходит с вашей физической машиной, но за счет некоторых накладных расходов.

Однако преимуществ много:

  • Сделать ошибку при установке, настройке или удалении программного обеспечения? Ничего страшного, вы можете просто начать заново с новым изображением.
  • Ваш эксперимент катастрофически провалился и заморозил операционную систему вокруг него? Опять же, не проблема, потому что воздействует только на виртуальную машину.
  • Вам нужно повторять в немного других условиях? Каждый набор условий, например, разные версии программного обеспечения или различное программное обеспечение (например, использование Apache или Nginx), может стать отдельным программным компьютером или виртуальной «коробкой».

виртуальная машина Linux

Инструмент под названием Vagrant поможет вам развернуть «базовые блоки», которые содержат предварительно сконфигурированные операционные системы Linux в различных вариантах.

В этой статье предполагается, что вы имеете некоторый комфорт при работе с виртуальной машиной без графического интерфейса и исключительно с помощью интерфейса командной строки (CLI).

Давайте получим поставщика виртуальной машины и Vagrant, прежде чем мы настроим базовый блок.

  1. Убедитесь, что у вас есть поставщик виртуальных машин для вашей ОС. Как Windows, так и Mac OSX могут использовать Virtual Box. VMware также работает на обеих платформах. (Windows 10 Pro и выше может использовать Hyper V

    , что является шагом вперед, потому что он лучше использует оборудование.)

  2. Посетите Vagrantup.com и выберите подходящий установщик.
  3. В вашей структуре дерева локальных каталогов создайте новую папку для размещения коробки. (Местоположения, подчиненные вашему профилю пользователя, работают хорошо, местоположения в системных каталогах обычно не работают.)

Конфигурация среды веб-разработки

Вот тут-то и происходит волшебство автоматичности: инструмент под названием PuPHPet уплотняет и графически настраивает процесс выбора и настройки программного обеспечения, обычно используемого в LAMP, и даже выходит за рамки этого, добавляя поддержку серверных языков, таких как Ruby и Node.js

(технически JavaScript не является чисто серверной стороной, но это разнообразие), и альтернативы другим компонентам стека LAMP.

PuPHPet создает базовые файлы конфигурации для Vagrant. Мастер включает в себя более двадцати различных параметров для настройки, поэтому я остановлюсь только на некоторых из наиболее важных.

Как создать виртуальную среду веб-разработки и сервер PuPHPet 670x279

  • Цель развертывания — Здесь вы можете выбрать, хотите ли вы создать образ, подходящий для VirtualBox, VMWare и т. П., Или образ, подходящий для инфраструктуры облачных вычислений, такой как AWS или Digital Ocean.
  • Система> Пакеты — Здесь вы можете включить любое программное обеспечение, которое вы устанавливаете, как при обычной установке. В частности, вы должны включить любые пакеты, которые вы используете для разработки, которые включены в основу дистрибутива ОС.
    • Чтобы включить зависимости разработки для Ubuntu, укажите строить-основы
    • Чтобы включить то же самое для CentOS 7, укажите "Инструменты разработки"
  • Веб-серверы — Выберите Apache или Nginx, чтобы сформировать основу вашего L (A | E) MP стека.
  • Языки — PHP, Ruby, Node.js, Python.
  • Базы данных — Возможно, одной из наиболее привлекательных особенностей этого подхода является способность создавать виртуальные машины для игры с различными вариантами доступных баз данных. Хотя по умолчанию MySQL, вы можете поиграть с чем-то более новым, как MariaDB

    ,

  • Остальные опции несколько экзотичны, и если вы не знаете, что это такое, их всегда можно установить позже. В конце концов, у вас есть полноценная операционная система.

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

Теперь выполните следующее:

$ vagrant up

И понаблюдайте за результатами:

Как создать виртуальную среду веб-разработки и сервер vm 670x245

Поскольку у вас нет базового блока в вашем локальном каталоге, vagrant будет извлекать изображение из Atlas, хранилища предварительно сконфигурированных блоков vagrant.

(Технически, любой из них может быть добавлен на ваш локальный компьютер с помощью команды: $ vagrant box add USER / BOX)

Завершение

На этом этапе ваша виртуальная машина загружена, и вы в основном онлайн. Осталось только одно: выдать команду $ vagrant ssh погрузиться в надлежащий SSH-сеанс с вашей (безголовой) виртуальной машиной, действующей в качестве сервера LAMP. Congrats!

Учить больше

Отсюда, в Vagrant есть еще что сказать и сделать, и, как вы знаете, неограниченное количество можно достичь с помощью собственной игровой площадки. Посмотрите официальное руководство по началу работы, чтобы узнать, где я остановился.

Вы когда-нибудь использовали виртуальную машину для собственной среды разработки? Вы использовали эту настройку или использовали другой подход? Поделитесь своими идеями в разделе комментариев ниже!

Ссылка на основную публикацию
Adblock
detector