LogoLogo
www.mikopbx.ruTelegram сообществоФорум
Russian
Russian
  • Руководство по MikoPBX
    • Быстрое начало работы
    • Знакомство с MikoPBX
    • Системные требования
  • Установка
    • Отдельный компьютер
    • Виртуальные машины
      • VMware ESXi
      • VMware Fusion
      • VirtualBOX
      • VMware Workstation Pro
      • Hyper-V
      • Proxmox
    • Облачные сервисы
      • Yandex Cloud
        • Магазин приложений
        • Произвольный образ
        • Коммандная строка YC
      • VK Cloud
      • 1С:Облачная инфраструктура
      • AWS
        • AWS подробная инструкция
        • AWS Маркетплейс
      • Microsoft Azure
      • Google Cloud
        • Google Cloud подробная инструкция
        • Google Cloud Маркетплейс
      • Hetzner cloud (Empty)
      • Vscale
      • Selectel
      • DigitalOcean
      • Alibaba cloud
      • Vultr
    • В Docker контейнере
      • Установка докера и cоздание пользователя и каталогов
      • Запуск MikoPBX в контейнере
      • Запуск MikoPBX с помощью docker compose
  • Руководство пользователя
    • Телефония
      • Сотрудники
      • Очереди вызовов
      • IVR меню
      • Конференции
      • Звуковые файлы
      • История вызовов
    • Маршрутизация
      • Провайдеры телефонии
      • Входящие маршруты
      • Исходящие маршруты
      • Нерабочее время
    • Модули
      • Регистрация в маркетплейсе модулей
      • Управление модулями
      • Приложения диалпланов
    • Обслуживание
      • Обновление системы
        • Обновление из web-интерфейса
        • Обновление из консоли MikoPBX
        • Обновление Docker
      • Диагностика системы
      • Перезагрузка и выключение системы
    • Сеть и Firewall
      • Сетевые интерфейсы
      • Сетевой экран
      • Защита от взлома
    • Система
      • Общие настройки
      • Дата и время
      • Почта и уведомления
        • Настройка E-mail уведомлений для почтового сервиса Gmail
        • Настройка E-mail уведомлений для почтового сервиса Yandex
        • Настройка E-mail уведомлений для почтового сервиса Mail.ru
      • Доступ к AMI
      • Кастомизация системных файлов
  • Часто задаваемые вопросы
    • Интеграция с 1С
      • Перехват на ответственного
        • Перехват на ответственного в панели телефонии 4.0 как в панели 1.0
        • Отменить перехват на ответственного для конкретного провайдера
    • Установка
      • Установка на MDADM RAID1
      • Тонкая настройка firewall
      • Перенос MikoPBX на другой сервер
        • Перенос с помощью резервного копирования
        • Перенос с помощью резервного копирования по расписанию
        • Перенос с помощью rsync
      • Сброс к заводским настройкам
      • Мониторинг провайдеров на MikoPBX
    • Обслуживание
      • Изменить имя для авторизации
      • Закончилось место на доп. диске, увеличение размера диска
      • Закончилось место на доп. диске, перенос данных на новый диск
      • Хранение записей в общей папке windows
      • Резервный интернет и перерегистрация провайдеров
      • Сброс пароля администратора из консоли MikoPBX
    • Диагностика проблем
      • Подключение к АТС с помощью SSH
        • Подключение к АТС с помощью SSH-клиента (Putty)
        • Подключение с помощью SSH (Windows)
        • Подключение с помощью SSH (Linux/MacOS)
      • Подключение к АТС с помощью WinSCP
      • Получение логов с помощью приложения tcpdump
      • Снятие лога в АТС с помощью Wireshark
      • Анализ трафика средствами Sngrep
      • Настройка громкости
      • Решение проблем со звуком
      • Настройка Jitter
    • Входящая маршрутизация
      • Выбор провайдера при переадресации на мобильный
      • Уведомление о занятости, Call Waiting
      • Маршрутизация по DID номеру
      • Черные и белые списки
      • Разрешить донабор внутреннего номера в очереди
      • Нормализация входящего номера телефона
      • Настройка индивидуального нерабочего времени для учетной записи провайдера
      • Вывод информации о did-номере
      • Пример реализации типового маршрута входящих вызовов
      • Базовый пример IVR
    • Исходящая маршрутизация
      • Добавить P-Preferred-Identity и Remote-Party-ID заголовок
      • Конференция с постоянным внешним абонентом
      • Исходящий с набором внутреннего номера
      • Убрать все спецсимволы из набираемого номера
      • Запрет звонка через резервный маршрут
      • Звонки на экстренные номера
      • Звонок через определенного провайдера
      • Шаблоны номеров
        • Равномерное распределение исходящих
        • Удаление кода города из номера
        • Добавление префикса "8" к номеру
        • Замена префикса номера с "8, 7" на "+7"
        • Замена префикса номера с "+7" на "8"
        • Пример шаблона: звонки в другую страну (Украина, Беларусь, Латвия)
        • Как запретить замену "+" на "00"
        • Нормализация набираемого номера телефона
    • Сценарии и кейсы
      • Программное создание сотрудников
      • Уведомление в телеграмм о пропущенных
      • Позвонить в компанию с мобильного и набрав добавочный позвонить сторонней компании
      • Отправка входящего факса на email
      • Оценка клиентом качества обслуживания
      • Имитация внешних звонков
      • Отключение "нерабочего времени" для VIP номеров
      • Регистрация нескольких учетных записей от одного провайдера
      • Настройка индивидуального нерабочего времени для нескольких провайдеров, на одном хосте
      • Отключить переадресацию на мобильный для внутренних звонков
      • Уникальная фоновая музыка для очереди
      • Пауза для агента очереди
      • Динамические агенты очередей
      • Настройка функции "Paging"
      • Ограничить количество авторизаций на одном SIP аккаунте
      • Как реализовать функцию супервизора
      • Голосовая почта
      • Конвертация истории звонков FreePBX -> MikoPBX
      • SSL сертификат для web-интерфейса MIKOPBX от OPNSense
      • Скрытие номера от сотрудника
    • Соединение нескольких АТС
      • Объединение двух MikoPBX
      • Объединение MIKOPBX и Grandstream UCM6202
      • Объединение MikoPBX и FreePBX (PJSIP)
      • Объединение MikoPBX и FreePBX (IAX)
    • Настройка провайдеров
      • Ростелеком
      • MTT
      • Zadarma (Novofon)
      • Мегафон
      • Билайн
      • МТС
      • UIS (uiscom.ru)
      • MANGO OFFICE
      • dom.ru
      • Яндекс телефония
      • NEW-TEL
      • sip.tg
      • Lifecell
      • SIP Коннектор Bitrix24
      • ID Phone(Казахтелеком)
      • Имитация внешних входящих и исходящих звонков
      • Телфин
    • Настройка софтфонов
      • Bria Solo
      • Sessiontalk
      • Groundwire
      • MicroSIP
      • Zoiper
      • Jitsi
      • PhonerLite
      • Linphone (MacOS)
      • Telephone(MacOS)
      • Настройка WebRTC клиента SIPML5
      • Softphone.pro
      • 3CX Softphone
      • PortSIP
      • SIP.tg (Telegram)
    • Voip шлюзы
      • GoIP4
        • SMS в Telegram
      • Yeastar NeoGate TG 400
      • Grandstream HT503
      • Звонки через 3G модем Huawei E173 (chan_dongle)
    • IP-Телефоны
      • Snom D120
      • Yealink T19
      • Yealink T21
      • Yealink T28
      • Fanvil X3SP
    • Перестает работать сеть в MikoPBX
  • Модули
    • Модули МИКО
      • Интеграция с 1С
        • Панель телефонии 1.0 для 1С
        • Панель телефонии 4.0 для 1С
        • Модуль умной маршрутизации
      • Интеграция с amoCRM
        • Описание функционала amoCRM
        • Настройка интеграции с amoCRM
      • Интеграция с CRM Bitrix24
        • Описание функционала CRM Bitrix24
        • Настройка интеграции с Bitrix24
      • Управление телефонными группами
      • Резервное копирование
      • Автоматическая настройка телефонов
      • Автообработка пропущенных
      • Let's Encrypt
      • Управление доступом в систему
      • Модуль Автоинформатор
      • Оценка качества разговора
      • Синхронизация с LDAP/AD
      • Провайдер для звонков Telegram
      • Zabbix агент
      • Телефонная книга
      • Расширенная история звонков
  • Прочее
    • История версий
      • MikoPBX 2024.1
      • MikoPBX 2023.2
      • MikoPBX 2023.1.223
Powered by GitBook
On this page
  • Запуск контейнера Docker
  • Проверка работы
  • Особенности работы контейнизированной MikoPBX
  • Создание контейнера из tar архива
  • Переменные окружения для конфигурирования MikoPBX

Was this helpful?

Edit on GitHub
Export as PDF
  1. Установка
  2. В Docker контейнере

Запуск MikoPBX в контейнере

Установка MikoPBX с помощью Docker

Last updated 6 months ago

Was this helpful?

Для работы с MikoPBX в контейнере необходимо установить docker и docker compose, а также создать пользователя и папки для хранения настроек конфигурации и записей разговоров по инструкции

Запуск контейнера Docker

Для запуска контейнера с вашим приложением воспользуйтесь следующими командами:

# Получение образа контейнера
sudo docker pull ghcr.io/mikopbx/mikopbx-x86-64

# Запуск контейнера в не привилегированном режиме
sudo docker run --cap-add=NET_ADMIN --net=host --name mikopbx --hostname mikopbx \
           -v /var/spool/mikopbx/cf:/cf \
           -v /var/spool/mikopbx/storage:/storage \
           -e SSH_PORT=23 \
           -e ID_WWW_USER="$(id -u www-user)" \
           -e ID_WWW_GROUP="$(id -g www-user)" \
           -it -d --restart always ghcr.io/mikopbx/mikopbx-x86-64

Проверка работы

Чтобы убедиться, что ваше приложение MikoPBX запостилось и работает в Docker-контейнере, можно выполнить следующие шаги после его запуска. Эти шаги помогут проверить состояние контейнера и просмотреть его логи.

Шаг 1: Проверка статуса контейнера

Сначала нужно удостовериться, что контейнер успешно запущен и работает. Для этого используем команду docker ps, которая покажет список запущенных контейнеров и их статус.

sudo docker ps

Эта команда выведет информацию о всех активных контейнерах. Убедитесь, что контейнер mikopbx присутствует в списке и его статус указывает на то, что он запущен и работает (например, статус up).

Шаг 2: Просмотр логов контейнера

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

sudo docker logs mikopbx

Просмотрите вывод команды на наличие сообщения, подобного указанному ниже. Это сообщение свидетельствует о том, что MikoPBX успешно загружена и готова к использованию:

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|               All services are fully loaded welcome                |
|                       MikoPBX 2024.1.60.                           |
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|                        Web Interface Access                        |
|                                                                    |
| Local Network Address:                                             |
| https://10.0.0.4                                                   |
|                                                                    |
| Web credentials:                                                   |
|    Login: admin                                                    |
|    Password: admin                                                 |
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
| SSH access disabled!                                               |
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Если отображается процесс запуска MikoPBX то необходимо подождать и повторить команду sudo docker logs mikopbx

Шаг 3: Проверка доступа к веб-интерфейсу

При старте контенер не имеет информации об адресе хостовой системы, потому необходимо открыть внешний адрес хостовой системы, в данном случае Ubuntu в браузере. https://<IP адрес хост системы>

Войдите в веб-интерфейс, используя логин admin и пароль admin, чтобы убедиться, что веб-интерфейс доступен и функционирует корректно.

Особенности работы контейнизированной MikoPBX

  • Флаг NET_ADMIN необходим для возможности работы системы проактивной защиты fail2ban и фаервола iptables внутри контейнера. При срабатывании блокировки доступа, например при вводе неверного пароля, доступ с IP адреса злоумышленника будет заблокирован.

  • Если необходимо использовать «Модуль резервного копирования», то контейнер следует запускать с флагом –privileged. Когда MikoPBX запускается в контейнере, резервное копирование можно также выполнять архивированием каталогов cf и storage вручную . В этом случае привелегированный режим можно не использовать, но в момент копирования контейнер должен быть остановлен.

  • При необходимости можно скорректировать стандартный набор портов, которые использует MikoPBX. Это можно сделать объявляя переменные окружения при запуске контейнера.

Создание контейнера из tar архива

Помимо использования нашего официального реестра, вам может понадобиться вариант создания контейнера из образа, например для бета версии. В составе опубликованных релизов и предрелизов поставляется tar архив, который мы используем для создания контейнера.

Пример кода, для его использования:

# Создаем контейнер из tar архива
sudo docker import \
  --change 'ENTRYPOINT ["/bin/sh", "/sbin/docker-entrypoint"]' \
  mikopbx-2024.1.114-x86_64.tar \
  "mikopbx:2024.1.114"

# Запускаем созданный контейнер
sudo docker run --cap-add=NET_ADMIN --net=host --name mikopbx --hostname mikopbx \
	 -v mikopbx_cf:/cf \
	 -v mikopbx_storage:/storage \
	 -e SSH_PORT=23 \
	 -e ID_WWW_USER="$(id -u www-user)" \
	 -e ID_WWW_GROUP="$(id -g www-user)" \
	 -it mikopbx:2024.1.114

Переменные окружения для конфигурирования MikoPBX

Ниже перечислены некоторые переменные окружения, которые позволят скорректировать используемые MikoPBX порты и настройки.

  • SSH_PORT - порт для SSH (22)

  • WEB_PORT - порт для работы web интерфейса по протоколу HTTP (80)

  • WEB_HTTPS_PORT - порт для работы web интерфейса по протоколу HTTPS (443)

  • SIP_PORT - порт для подключения SIP клиента (5060)

  • TLS_PORT - порт для подключения SIP клиента с шифрованием (5061)

  • RTP_PORT_FROM - начало диапазона RTP портов, передача голоса (10000)

  • RTP_PORT_TO - конец диапазона RTP портов, передача голоса (10800)

  • IAX_PORT - порт для подключения IAX клиентов (4569)

  • AMI_PORT - порт AMI (5038)

  • AJAM_PORT - порт AJAM используется для подключения панели телефонии для 1С (8088)

  • AJAM_PORT_TLS - порт AJAM используется для подключения панели телефонии для 1С (8089)

  • BEANSTALK_PORT - порт для сервера очередей Beanstalkd (4229)

  • REDIS_PORT - порт для сервера Redis (6379)

  • GNATS_PORT - порт для сервера gnatsd (4223)

  • ID_WWW_USER - идентификатор пользователя www-user (можно задать выражением $(id -u www-user), где www-user имя НЕ root пользователя)

  • ID_WWW_GROUP - идентификатор группы www-user (можно задать выражением $(id -g www-user), где www-user имя НЕ root группы)

  • WEB_ADMIN_LOGIN - логин для доступа в Web интерфейс

  • WEB_ADMIN_PASSWORD - пароль для доступа в Web интерфейс

Флаг –net=host указывает на то, что NAT между хостом и контейнером не будет использоваться. MikoPBX будет подключена напрямую к сети хостовой машины. Все порты, которые должен занять контейнер будут заняты и на хост машине. Если на хост машине, какой-то из портов недоступн, то при загрузке MikoPBX возникнут ошибки. Подробнее в

Полный список всех возможных параметров настроек доступен в исходном коде .

документации к Docker...
по ссылке
Установка докера и cоздание пользователя и каталогов