Друзья! Мы долго и напряженно работали и теперь нам, уже честно, нравится то, что получилось. А получилось просто, удобно и понятно, для всех и везде. Вся конфигурация сложного и мощного Битрикс серверного окружения (серверы приложений, реалтайм-чаты, кэши, системы хранения и др.) из дюжины контейнеров и микросервисов описана полностью декларативно исключительно в форматах Dockerfile, Docker-compose и .env-файлов - нет никаких скриптов с кодом настройки, многоуровневых меню и императивщины. Мы выложили результат нашего труда в официальный git-репозиторий вендора и залили официальные образы контейнеров в официальное хранилище предсобранных образов (docker images). Смело качайте, устанавливайте "Управление сайтом" и "Битрикс24" любой редакции за "пару-тройку" (С) минут (хоть самую "навороченную" редакцию "энтерпрайз") где хотите, от рабочего стола разработчика до мощного кластера серверов (включая оркестраторы типа "кубернетес") и наслаждайтесь прозрачной и быстрой работой системы в контейнерах!

От переполняющего меня ощущения радости и льющихся из глаз потоков слез счастья я буду дальше предельно краток и скуп на картинки. Картинок - не будет. Я просто, "на пальцах", понятным языком, в виде ответов на вопросы, расскажу, какие возможности открывает перед вами официальное контейнерное окружение Битрикс от вендора и почему ваша жизнь может круто измениться и стать на порядок более эффективной через несколько минут!

Что такое "контейнеры"?

Сложно объяснить, особенно если не разбираешься в теме - легко. А вот объяснить просто - сложно! :-)

"Контейнеры" - это самый современный и быстрый способ распространения простых и сложных программ, позволяющий быстро запустить их где угодно - от рабочего стола разработчика и тестировщика, до кластера кубернетес. "Контейнеры" на порядки снижают сложность и время развертывания, кратно увеличивая качество решения для конечного пользователя. Не нужно больше тратить, иногда, дни и недели на развертывание - запуск Битиркс из контейнеров даже в самой сложной конфигурации "энтерпрайз" с Postgres и "всеми наворотами" занимает несколько минут.

Персональный совет: приходите к любому вендору с первым и главным вопросом "вы поддерживаете контейнеры?", как с лакмусовой бумагой. Если вендор современный и продвинутый, он их поддерживает в своих продуктах или планирует поддержать в ближайшее время. Запомните, практически весь самый популярный и полезный в мире софт доставляется в "контейнерах". Отлично, идем дальше по вопросам!

Сколько может быть "контейнеров" в приложении?

Простые приложения могут распространятся в виде одного "контейнера", который создается из одного "образа" - например nginx или mysql. Сложные приложения, типа Apache Superset, могут содержать в себе 2-3 и более контейнеров для разных микросервисов. Битрикс содержит дюжину контейнеров и микросервисов (их число постоянно добавляется, следите за новостями), в зависимости от конфигурации дистрибутива и редакции.

Внутри нашей сборки есть одобренные и протестированные вендором образы "nginx", "php", "mysql", "postgres" и множество других. Все эти образы "контейнеров" тщательно описаны нами в Dockerfiles, куда при сборке кладутся подготовленные наши и легко читаемые простыми смертными конфигурационные файлы.

А можно запустить "контейнеры" на нескольких серверах?

По умолчанию, Битрикс запустит все свои контейнеры и микросервисы на одном сервере (или рабочем столе разработчика, тестировщика, администратора, безопасника) так, как описано в декларативном Docker-compose. Но легко можно разделить систему на части и некоторые контейнеры и микросервисы можно, при желании, запустить на выделенных серверах, например контейнеры для MySQL, Postgres, Sphinx. Еще нередко выносят на отдельные серверы контейнеры и микросервисы для чатов и быстрых коммуникаций.

А можно запустить "контейнеры" Битрикс в Kubernetes?

Легко! Обычно достаточно одного вечера и хорошо заваренного чайника с зеленым чаем, чтобы из имеющихся и тщательно подготовленных нами Dockerfiles и Docker-compose подготовить конфигурационные файлы Pods, Deployments и Ingress-Controllers для развертывания системы в Kubernetes. Ведь самое сложное в развертывании в Kubernetes - это подготовить качественные образы "контейнеров" и конфигурационные файлы, что мы уже и сделали для вас и будем поддерживать их в актуальном состоянии, как вендор (шепчу на ухо: активно пользуйтесь этим преимуществом).

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

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

А что такого сложного в самостоятельной сборке образа контейнера PHP, Nginx или NodeJS для запуска Битрикс?

Скажу честно - в подготовку конфигурационных и Docker-файлов того же образа PHP нами вложено немало сил и тестирования совместимости. Очень, очень много тонкостей нам пришлось учесть, чтобы Битрикс работал у вас с этой контейнерной конфигурации как новенький iPhone работает с новенькими AirPods. Аналогично, непросто было делать и тестировать в разных редакциях и условиях образ с специализированными модулями для Nginx, предназначенными для максимально быстрой работы Битрикс. Дам совет - если хотите снизить технологические риски и получить максимально быструю работу Битрикс - берите наши образы и конфиги контейнеров, иначе что-то может потом работать не так или не так быстро.

А как дела с информационной безопасностью?

ИБ - это важно. Мы уделили особое внимание вопросам обеспечения информационной безопасности контейнерной сборки, фанатично проработав с внутренним отделом информационной безопасности Dockerfiles и защитив все потоки данных в продукте внутри контейнерной сборки. Но, тем не менее, мы настоятельно рекомендуем, для разворачивания контейнерной сборки "на проде" собрать внутреннее совещание с вашими системными администраторами и безопасниками, просмотреть глазами все конфигурационные файлы контейнерной сборки еще раз, все "понять и простить" (С) и только когда все потоки данных и настройки будут понятны, переходить к переносу контейнерной конфигурации "на бой". Обратите внимание, в нашем официальном репозитории - очень, очень подробная документация, и ее нужно всю прочитать (и перечитать). Если же вам требуется гибкое управление микросервисами и автоматическое восстановление после падения серверов, я рекомендую потратить еще один вечер и аккуратно портировать наши конфигурационные файлы контейнеров в конфигурационные файлы Pods и Deployments кубернетес и запуститься там - вам понравится опыт и, поверьте, обратно в Docker-compose вы больше не вернетесь! :-)

"Полюбит, не полюбит"?

Контейнерную сборку Битрикс, я уверен, полюбят разработчики, т.к. теперь, чтобы запустить "Управление сайтом" или "Битрикс24" на рабочем столе, потребуется пара минут (я серьезно, проверьте прямо сейчас). У разработчика все многочисленные контейнеры и микросервисы "Управление сайтом" и "Битрикс24" теперь перед глазами - видны все логи, метрики использования процессора, памяти, сети, диска, все теперь совершенно ясно, не нужно "делать доступ к логам на сервер" и ждать его две недели и не дождаться.

Новую официальную контейнерную сборку, я убежден, полюбят и тестировщики. Все контейнеры и микросервисы тестируемого веб-сайта теперь у тестировщика перед глазами на рабочем столе и/или внутри Docker-Desktop. Видны все ошибки и предупреждения в логах. Все то, что запущено у тестировщика на рабочем столе, будет один к одному запущено "на бою". "У меня работало, а у клиента - нет" (С), останется в прошлом. Качество тестирования увеличится в разы, это проверено моей личной практикой не раз.

Контейнерную сборку беззаветно полюбят безопасники. Теперь у них весь "Битрикс24" перед глазами - видны все логи всех контейнеров и потоки данных. Все пароли и конфиги. Не нужно договариваться с системными администраторами и ждать неделю доступ к логам и конфигам на серверы (и не дождаться) - все можно оперативно проверить на рабочем столе и практически все то же самое будет и "на бою".

Обычно контейнерные сборки тепло воспринимают и продакты. Вы легко сможете показать продакту или бизнес-менеджеру развернутый за минуты на рабочем столе (или сервере) веб-проект на "Управлении сайтом" или "Битиркс24", наполненный контентом, с работающими админками, чатами, звонками и уведомлениями. Это сильно снижает риски внедрения и поощряет эксперименты с добавлением других популярных контейнеров с полезным открытым софтом, поверьте мне.

А вот кто реально затаит на вас обиду, так это наши любимые бесценные системные администраторы (я, конечно, шучу!). Ведь теперь любой сможет за 2 минуты запустить у себя на рабочем столе перед совещанием "Битрикс24-энтерпрайз" с Postgres и Sphinx и проверить, как в нем работает реал-тайм поисковая индексация сообщений в живой ленте. Но героических сисадминов ждут впереди новые и интересные вызовы - нужно учиться эффективно обновлять контейнеры, перезапускать при необходимости, управлять их логами, выделять им необходимое количество ресурсов и учиться дергать глазом, когда разработчики передадут им не Docker-compose, а полноценный Helm Chart с глубоко кастомизированным Ingress-Controller - но это уже совсем другая история! :-) (не пугайтесь, я одной ногой сисадмин, поэтому все что написано выше - чистая неправда)

Итого

Надеюсь, друзья, было интересно это все читать и все было предельно понятно и ясно, особенно где тут для вас бизнес-польза и увеличение эффективности труда и снижение рисков. Контейнеры принесли простоту и скорость внедрения, увеличив его качество в разы. А официальные контейнеры от вендора - еще большее благо, т.к. вендор берет на себя большую часть рисков их сопровождения и поддержки. Рекомендую прямо сейчас запустить у себя контейнерную сборку Битрикс внутри Docker-Desktop на рабочем столе и прочувствовать простоту и эффективность технологии и наслаждаться.

Задавайте, пожалуйста, побольше вопросов и удачных вам проектов!

Комментарии (2)


  1. hitmany
    23.06.2025 06:14

    Ура товарищи! Спустя столько лет российский вендор монополист наконец начал слушать пользователей. Спасибо всем кто к этому был причастен


  1. hayk4500
    23.06.2025 06:14

    Сделайте гибких роботов в задачах в Битриксе. Чтобы можно было скрипты писать прям в настройках роботов проекта. А то если честно не слишком гибко сейчас, большинство идеи невозможно реализовать без нагромождений нескольких роботов.

    Скрытый текст