Розумна краплина та кмітливий кит — навіть з логотипів видно, що Drupal і Docker чудово поєднуються! Здається, що їхня стихія — це вода, але їхня справжня «стихія» — це ефективність. Спільними між ними також є гнучкість, безпечність та стандарти open-source. Тож після колекції корисних посилань для роботи з Docker, ми би хотіли пильніше придивитися до цієї «парочки» і розібратися, чому ж варто використовувати Docker у Drupal-розробці.
Docker: правильна контейнеризація починається тут
Якщо уявити найкращу в світі службу перевезень, то це та, яка правильно пакує ваші речі, щоб вони не забирали багато місця і були добре ізольовані одна від одної. А потім — швидко та надійно доставляє їх в будь-яке місце, і ви можете бути певні, що вони залишаться в тому ж стані, в якому були.
Docker пропонує набагато більше. Ця легка та безпечна платформа для контейнеризації з відкрититим кодом (open-source) призначена для створення, транспортування та запуску вашого додатку чи сайту. Просто спакуйте його, разом зі всіма залежностями, бібліотеками, налаштуваннями та всім іншим, необхідним для роботи, в один Docker-образ (image) — і запускайте де завгодно, незалежно від оточення. Коли ви запускаєте образ, то отримуєте контейнер. Контейнерів на один образ може бути декілька.
Docker і Drupal-розробка: застосування та переваги
Docker значно полегшує життя Drupal-розробникам і системним адміністратором, спрощуючи та автоматизуючи безліч процесів. Їх список включає, але не обмежується наступними:
- створення нового середовища
- розгортання нової копії Drupal-сайту
- безперервна інтеграція
- міграція сайту на інший сервер
- апгрейд сайту з однієї версії Drupal на іншу
- налаштування інфраструктури побудова, масштабування, тестування, дебагінг Drupal-сайту
Що саме робить Docker таким корисним для Drupal-розробників та адмінів у цих і багатьох інших питаннях? Давайте подивимось.
- Злагодженість понад усе. Docker дозволить вам покращити співпрацю розробників, які використовують різні середовища. «Перемикатися» між проектами з різними версіями PHP — простіше простого. Docker також забезпечує хорошу ізольованість від операційної системи хоста.
- Контейнери дуже прості у роботі. Їх легко та швидко створювати, налаштовувати, масштабувати вертикально і горизонтально, видаляти чи перебудовувати.
- Контейнери не забирають багато місця на диску і є дуже легкими. Їх можна розмістити багато на одній хост-машині. Ізоляція контейнерів один від одного «підстраховує» всю систему на випадок якоїсь проблеми з одним контейнером. Зазвичай один контейнер відповідальний за один процес чи сервіс. Ізоляція контейнерів не є повною (як у випадку з класичними віртуальними машинами), але це вигідно в плані швидкості.
- Вам можуть допомогти безліч готових Docker-образів, створених спеціально для Drupal, які можна знайти на Docker hub. Зокрема, в репозиторії нашої компанії можна знайти багато чудових образів (1 і 2). Можете також звернути увагу на популярну збірку Docker4Drupal від Wodby, яка допоможе вам суттєво прискорити локальну розробку на Linux, Mac OS X і Windows. Вона містить готові образи з Nginx, Apache, MariaDB, Drush, Solr, PHP і багато чим іншим. І лише тиждень тому вийшла оновлена версія Docker4Drupal — 2.3.0.
Це лише крапля в морі того, на що здатен Docker для Drupal-розробки. Бажаємо вам вдало занурюватись усе глибше і глибше в його безмежні можливості, знаходити корисні збірки або й створювати свої. А наша команда завжди готова допомогти вам використовувати Docker з максимальною ефективністю!