Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
setup [2022/04/28 07:42] Портнов Алексей [Установка в облако] |
setup [2024/02/09 07:29] (текущий) Портнов Алексей [Docker] |
||
---|---|---|---|
Строка 14: | Строка 14: | ||
- **Live CD** - установка MikoPBX с **CD-диска** на отдельно выделенный сервер. ПК должен поддерживать загрузку с CD. | - **Live CD** - установка MikoPBX с **CD-диска** на отдельно выделенный сервер. ПК должен поддерживать загрузку с CD. | ||
- **Docker** - требования **linux 5**+ и установленный **docker** | - **Docker** - требования **linux 5**+ и установленный **docker** | ||
+ | |||
+ | ===== Требование к сетевому каналу ===== | ||
+ | |||
+ | Пример расчета необходимой пропускной способности канала для различных кодеков на 30 одновременных звонков. | ||
+ | АТС поддерживает наиболее популярные кодеки: | ||
+ | * **G.711** - 4.67 Mbps | ||
+ | * **GSM** - 1.68 Mbps | ||
+ | * **G.722** - 4.67 Mbps | ||
+ | * **G.729** - 1.38 Mbps (**кодек будет доступен в версиях 2022.2.1+**) | ||
+ | |||
+ | <note important>Расчет ориентировочный, при использовании одного кодека на всех устройствах, подключенных к АТС. Подробнее [[https://www.asteriskguru.com/tools/bandwidth_calculator.php | тут]]. </note> | ||
===== Минимальные системные требования ===== | ===== Минимальные системные требования ===== | ||
Строка 19: | Строка 30: | ||
<note important>Мы рекомендуем для развертывания АТС использовать **два** жестких диска. </note> | <note important>Мы рекомендуем для развертывания АТС использовать **два** жестких диска. </note> | ||
- | * Жесткий диск объемом 800 Mb для основной системы | + | * Жесткий диск объемом **800 Mb** для основной системы |
- | * Жесткий диск объемом 50+ Gb для записей разговоров | + | * Жесткий диск объемом **50+ Gb** для записей разговоров |
- | * 1 процессор x86-64 | + | * **1 (2 ядра)** процессор **x86-64** |
- | * 1Gb оперативной памяти | + | * **2Gb** оперативной памяти |
* Сетевой адаптер | * Сетевой адаптер | ||
+ | <note tip>ПК, с такими параметрами, в наших тестах, держит **38 одновременных входящих звонков** при условиях: | ||
+ | * К очереди подключено 10 агентов (все online) | ||
+ | * Каждую секунду поступает новый звонок | ||
+ | * Клиенту во время ожидания воспроизводится музыка (MOH) | ||
+ | * На АТС не установлено доп. модулей | ||
+ | </note> | ||
<note important>Ориентировочно, **1 час** разговора занимает **14Мб** места на диске. </note> | <note important>Ориентировочно, **1 час** разговора занимает **14Мб** места на диске. </note> | ||
Строка 35: | Строка 52: | ||
* [[setup:vmware_workstation|VMware Workstation Pro]] | * [[setup:vmware_workstation|VMware Workstation Pro]] | ||
* [[setup:hyperv|Hyper-V]] | * [[setup:hyperv|Hyper-V]] | ||
+ | * [[https://настройка-микротик.рф/ip-телефония-с-нуля/|MikoPBX на Proxmox (настройка-микротик.рф)]] | ||
===== Установка в облако ===== | ===== Установка в облако ===== | ||
Строка 44: | Строка 62: | ||
* [[faq:google-cloud|Google Cloud]] | * [[faq:google-cloud|Google Cloud]] | ||
* [[https://asko.host/pbx | Облако asko.host]] | * [[https://asko.host/pbx | Облако asko.host]] | ||
- | * [[faq:hetzner-cloud||Hetzner cloud]] | + | * [[faq:hetzner-cloud|Hetzner cloud]] |
===== Docker ===== | ===== Docker ===== | ||
Строка 62: | Строка 80: | ||
# Вариант запуска MikoPBX | # Вариант запуска MikoPBX | ||
# НЕ привилегированный режим. Пользователь и группа "www-data" дожены существовать в системе: | # НЕ привилегированный режим. Пользователь и группа "www-data" дожены существовать в системе: | ||
- | docker run --cap-add=NET_ADMIN --net=host --name mikopbx \ | + | docker run --cap-add=NET_ADMIN --net=host --name mikopbx --hostname mikopbx \ |
-v /var/spool/mikopbx/cf:/cf \ | -v /var/spool/mikopbx/cf:/cf \ | ||
-v /var/spool/mikopbx/storage:/storage \ | -v /var/spool/mikopbx/storage:/storage \ | ||
Строка 71: | Строка 89: | ||
</code> | </code> | ||
- | <note important>Флаг **NET_ADMIN** необходим для возможности работы **fail2ban** и **iptables** внутри контейнера.</note> | + | <note important>Флаг **NET_ADMIN** необходим для возможности работы **fail2ban** и **iptables** внутри контейнера. |
+ | |||
+ | **Обязательно** укажите параметр "**hostname**", иначе его значение будет назначено автоматически, что приведен к проблеме с лицензированием. </note> | ||
+ | <note warning>Если необходимо использовать "[[module-backup|Модуль резервного копирования]]", то контейнер следует запускать с флагом **--privileged**. Резервное копирование можно выполнять архивированием каталогов **cf** и **storage** вручную (когда контейнер остановлен).</note> | ||
<note tip>Флаг **--net=host** указывает на то, что NAT не будет использоваться для нового контейнера. Все порты, что должен занять контейнер будет заняты и на хост машине. Подробнее в [[https://docs.docker.com/network/host/|документации...]] Если на хост машине, какой то из портов занят, то при загрузке MikoPBX могут возникнуть ошибки. \\ \\ Ниже описаны переменные окружение, которые позволят скорректировать используемые MikoPBX порты: | <note tip>Флаг **--net=host** указывает на то, что NAT не будет использоваться для нового контейнера. Все порты, что должен занять контейнер будет заняты и на хост машине. Подробнее в [[https://docs.docker.com/network/host/|документации...]] Если на хост машине, какой то из портов занят, то при загрузке MikoPBX могут возникнуть ошибки. \\ \\ Ниже описаны переменные окружение, которые позволят скорректировать используемые MikoPBX порты: | ||
* **SSH_PORT** - порт для SSH (**22**) | * **SSH_PORT** - порт для SSH (**22**) | ||
Строка 96: | Строка 118: | ||
mikopbx: | mikopbx: | ||
container_name: "mikopbx" | container_name: "mikopbx" | ||
+ | hostname: "mikopbx" | ||
image: "ghcr.io/mikopbx/mikopbx-x86-64" | image: "ghcr.io/mikopbx/mikopbx-x86-64" | ||
network_mode: "host" | network_mode: "host" | ||
command: '-d' | command: '-d' | ||
+ | tty: true | ||
cap_add: | cap_add: | ||
- NET_ADMIN | - NET_ADMIN | ||
Строка 118: | Строка 142: | ||
</code> | </code> | ||
- | <note important>Внутри контейнера совместимых с ядром хост системы DAHDI модулей нет. По этой причине если необходим функционал MeetMe конференций, то DAHDI потребуется собрать на хост системе вручную.</note> | + | <note important>**Обязательно** укажите параметр "**hostname**", иначе его значение будет назначено автоматически, что приведен к проблеме с лицензированием. </note> |
Команда для подключения к консоли АТС: | Команда для подключения к консоли АТС: |