Огромный сборник статей от WPTec для начинающих

Мнение

Создание среды разработки WordPress с помощью Docker

За последние несколько лет волна технологий виртуализации прокатилась по нашим средам разработки WordPress. Наиболее многообещающим для меня оказался Docker: легкий и гибкий. Тем не менее, до недавнего времени запуск Docker был непосильной задачей, особенно на компьютере, отличном от Linux. Если вам удалось настроить и запустить его на виртуальной машине (используя Vagrant или что-то подобное), работающая переадресация портов заставит вас сдаться и просто использовать вместо этого Vagrant.

Теперь все по-другому.

Имея под рукой (стабильный) Docker для Mac и Windows и Docker Compose , настроить и запустить Docker легко и безболезненно. С помощью Docker Compose вы можете указать Docker, как именно должна выглядеть ваша среда разработки WordPress, и он позаботится об этом.

Что такое Docker ?

Docker — это технология, которая упрощает создание изолированных контейнеров для запуска ваших приложений и веб-сайтов. Эти контейнеры можно комбинировать и изменять в соответствии с потребностями ваших приложений. Docker использует технологию контейнеров Linux (LXC), в которой несколько изолированных сред могут использовать одно и то же ядро ​​Linux, что делает его очень легким по сравнению с чем-то вроде Vagrant.

Экосистема Docker построена вокруг контейнеров. В Docker Hub вы можете найти бесконечное количество контейнеров, созданных другими людьми, или вы можете создать свой собственный с помощью Dockerfile. При создании собственного образа вы можете начать с нуля, используя базовый образ Ubuntu, или расширить чужой образ.

Вы можете совместно использовать локальные каталоги со своими контейнерами и связать сети, чтобы они могли общаться друг с другом — так же, как вы знаете это из других технологий виртуализации. Однако здесь все усложняется, что приводит меня к Docker Compose:

Что такое Docker Compose?

Docker Compose — это то, что делает Docker доступным для таких смертных, как вы и я. Как следует из названия, Docker Compose — это инструмент для создания контейнеров Docker. Это означает определение ваших сервисов (контейнеров), настройку сети между ними, совместное использование с ними локальных каталогов и еще несколько вещей.

С Docker Compose вы создаете простой файл в корне вашего проекта, который описывает настройку, необходимую для вашего приложения/веб-сайта. Для темы WordPress это может означать контейнер для запуска WordPress, контейнер для запуска MySQL и контейнер для запуска Gulp или Grunt. Это можно очень легко определить в файле docker-compose.yml, которым затем можно поделиться с членами вашей команды. Это означает, что теперь вы можете поделиться своей темой WordPress, включая изолированную среду WordPress для ее запуска. Ура виртуализации!

Зачем использовать Docker?

Есть несколько причин, по которым Docker является для меня привлекательной технологией. Вот самые важные требования, которые я предъявляю к своей среде разработки, и то, как Docker их решает:

  • Чистый Mac: в идеальном мире я предпочитаю не устанавливать ничего, связанное с моей средой разработки, непосредственно на мой Mac. Я работаю над таким количеством разных проектов, что это становится неуправляемым. Когда одно работает, другое нет. Я также много путешествую, и если что-то случится с моим компьютером, я хочу иметь возможность настроить новую машину за считанные минуты.
  • Совместное использование: я часто работаю в команде, поэтому очень важно делиться своей средой разработки с товарищами по команде. Это возможно с Vagrant, но по-прежнему очень сложно синхронизировать среды между командами.
  • Легкий: это важно, особенно в дороге. Попробуйте запустить несколько контейнеров Vagrant в сравнении с несколькими контейнерами Docker и поймете, что я имею в виду.
  • Расширяемость: расширить Docker очень просто. Например, я мог бы расширить официальный контейнер WordPress и собрать его с предустановленным WP Pusher, поскольку я (очевидно) всегда его использую.
  • Зеркальное производство: моя среда разработки должна быть максимально приближена к производственной среде. С Docker это легко сделать, так как Docker можно использовать и в продакшене.

Моя среда разработки Docker

Это очень простая настройка Docker, которую я использую для разработки моего плагина WP Pusher: контейнер WordPress и MySQL. Оба они используют официальные образы Docker Hub, поэтому настроить их очень просто.

В нем описываются два сервиса: база данных MySQL 5.7 и WordPress, работающий на PHP 5.6 и Apache. База данных использует том на моем локальном компьютере, поэтому данные будут сохраняться каждый раз, когда я отключаю контейнер. Мой текущий каталог (в данном случае плагин) монтируется вwp-content/pluginsкаталог. Это позволяет мне работать над моим плагином в полностью изолированной среде WordPress — не устанавливая ничего, кроме Docker, на мой Mac. Контейнер WordPress перенаправляет порт 80 на мой локальный компьютер, поэтому я могу получить к нему доступ как «localhost» в своем браузере.

Если вы хотите попробовать это сами и на вашем компьютере установлен Docker, просто добавьте файл в свой плагин (или тему) и запустите:

$ docker-compose up -d

Чтобы увидеть, какие контейнеры запущены, просто запустите:

$ docker ps

Это очень простая установка, которую легко расширять и использовать.

Я надеюсь, что этот пост вызвал у вас интерес к Docker и WordPress.

Рекомендуем прочитать
Мнение

Плагин Delete Me для WordPress помогает владельцам веб-сайтов предоставить право на забвение GDPR

Мнение

Команда Gutenberg наращивает юзабилити-тестирование в WordCamp US

Мнение

Плагин распространителя теперь в бета-версии: новое решение для синдикации контента WordPress от 10up

Мнение

Gutenberg 1.8 добавляет большую расширяемость для разработчиков плагинов

Подпишитесь на рассылку
и будьте в курсе новостей Wordpress

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *