mp_doc:imain_install_deb13_web
Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
| mp_doc:imain_install_deb13_web [2026/08/25 10:23] – zis | mp_doc:imain_install_deb13_web [2026/08/26 04:38] (текущий) – zis | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| - | ====== Установка узла веб интерфейса (Debian 13) ====== | + | ===== Установка узла веб интерфейса (Debian 13) ===== |
| - | 1. Создадим пользователя mpweb, группу pyenv и включим нового пользователя в новую группу | + | Можно установить web приложения (webapp) на отдельный сервер (подготовить debian13 аналогично пп 1-4 [[imain_install_deb13_work|руководства]]) или использовать уже развернутый [[imain_install_deb13_kamailio|сервер kamaillio]]. После этого сервер нужно подготовить (общие шаги для всех webapp). |
| + | |||
| + | Подготовка сервера к развертыванию web приложений, | ||
| + | 1. Создадим пользователя mpweb, группу pyenv и включим нового пользователя в новую группу: | ||
| < | < | ||
| addgroup pyenv | addgroup pyenv | ||
| usermod -G pyenv mpweb | usermod -G pyenv mpweb | ||
| </ | </ | ||
| - | 2. Создать каталог для ведения логов и назначить права | + | 2. Создать каталог для ведения логов и назначить права: |
| < | < | ||
| - | 3. Установим зависимости | + | 3. Установим зависимости: |
| < | < | ||
| - | 4. Добавить в ~/ | + | 4. Добавить в ~/.bashrc: |
| < | < | ||
| - | **Это важно!** Не забудьте выйти - войти | + | **Это важно!** Не забудьте выйти - войти пользователем!\\ |
| 5. Установим нужную версию python через pyenv: | 5. Установим нужную версию python через pyenv: | ||
| < | < | ||
| - | 6. Сделаем каталог доступный для пользователей группы pyenv (из под root): | + | 6. Сделаем каталог доступный для пользователей группы pyenv: |
| < | < | ||
| - | Тут требуется пояснение: | + | Тут требуется пояснение: |
| - | 7. Добавим символические ссылки | + | 7. Добавим символические ссылки: |
| < | < | ||
| ln -s $PYENV_ROOT/ | ln -s $PYENV_ROOT/ | ||
| - | 8. Создадим виртуальное окружение (из под mpweb): | ||
| - | < | ||
| - | 9. Для активации окружения выполняем: | ||
| - | < | ||
| - | 10. Создадим файл / | ||
| - | < | ||
| - | |||
| - | # Global | ||
| - | pth=/ | ||
| - | USR= | ||
| - | URL=http:// | ||
| - | |||
| - | if [ " | ||
| - | # Checkout! | ||
| - | mkdir $pth | ||
| - | svn checkout --username $USR --no-auth-cache $URL $pth | ||
| - | elif [[ " | ||
| - | # Update | ||
| - | svn update --username $USR --no-auth-cache $pth | ||
| - | else | ||
| - | echo " | ||
| - | fi</ | ||
| - | 11. Сделаем исполняемым и получим репозитарий (из под mpweb): | ||
| - | < | ||
| - | / | ||
| - | 12. Установим зависимости (из под mpweb, с активированным виртуальным окружением mpweb): | ||
| - | < | ||
| - | pip3.8 install -r / | ||
| - | pip3.8 install pyramid_genshi pyramid_jinja2 bcrypt</ | ||
| - | 13. [Переделать] Установить egg для pyserv (из под mpweb): | ||
| - | < | ||
| - | python3.8 / | ||
| - | Но, так как задумывалось НЕ работает... Создадим руками: | ||
| - | < | ||
| - | ln -s -T / | ||
| - | ln -s -T ~/ | ||
| - | 14. Скопируем файлы настроек и запускаемый скрипт (из под mpweb): | ||
| - | < | ||
| - | cp / | ||
| - | # если каталог отсутствует то нужно выйти войти под mpweb (пере зайти в сессию) | ||
| - | mkdir / | ||
| - | cp / | ||
| - | </ | ||
| - | 15. Обновим языковые файлы (из под mpweb): | ||
| - | < | ||
| - | 16. Запустим: | ||
| - | < | ||
| - | Можно выполнять из без пути (просто run_mpweb), но только в том случае если файл лежит bin и каталог bin был созда ДО входа в текущую сессию! Если запуск выполнился без ошибок, | ||
| - | 17. Установим службу (из под root): | ||
| - | < | ||
| - | systemctl daemon-reload | ||
| - | systemctl enable mpweb | ||
| - | systemctl start mpweb | ||
| - | systemctl status mpweb | ||
| - | </ | ||
| - | 18. Распакуем из архива (www/ | ||
| - | * fontawesome/ | ||
| - | * webix/ | ||
| - | * mp | ||
| - | 19. Настройка nginx (из под root): | ||
| - | * Создадим файл / | ||
| - | < | ||
| - | map $http_upgrade $connection_upgrade { | ||
| - | default upgrade; | ||
| - | "" | ||
| - | } | ||
| - | </ | ||
| - | * Создадим файл / | ||
| - | < | ||
| - | server { | ||
| - | server_name <ИМЯ ДОМЕНА>; | ||
| - | client_max_body_size 32m; | ||
| - | |||
| - | location / { | ||
| - | root / | ||
| - | index index.html; | ||
| - | |||
| - | # kill cache | ||
| - | add_header Last-Modified $date_gmt; | ||
| - | add_header Cache-Control ' | ||
| - | if_modified_since off; | ||
| - | expires off; | ||
| - | etag off; | ||
| - | } | ||
| - | |||
| - | location /webix/ { | ||
| - | rewrite | ||
| - | root / | ||
| - | } | ||
| - | |||
| - | location /fa/ { | ||
| - | rewrite | ||
| - | root / | ||
| - | } | ||
| - | |||
| - | location /api/ { | ||
| - | rewrite | ||
| - | proxy_pass | ||
| - | proxy_redirect off; | ||
| - | proxy_http_version 1.1; | ||
| - | |||
| - | proxy_set_header Connection keep-alive; | ||
| - | proxy_set_header X-Forwarded-Host $host; | ||
| - | proxy_set_header Host $host; | ||
| - | proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; | ||
| - | proxy_set_header X-Real-IP $remote_addr; | ||
| - | } | ||
| - | |||
| - | |||
| - | root / | ||
| - | |||
| - | listen 80; | ||
| - | |||
| - | } | ||
| - | </ | ||
| - | Не забудьте поменять <ИМЯ ДОМЕНА>, | ||
| - | 19. Добавим символическую ссылку и проверим конфигурацию (из под root). | ||
| - | < | ||
| - | nginx -t | ||
| - | # если тест ОК, то | ||
| - | systemctl restart nginx | ||
| - | </ | ||
| + | ===== Разворачивание (deploy) веб приложения ===== | ||
| + | * [[imain_install_deb13_webapp_admin|Развертывание приложения веб интерфейса администратора]] | ||
| + | * [[imain_install_deb13_webapp_user|Развертывание приложения веб интерфейса пользователя]] | ||
mp_doc/imain_install_deb13_web.1787653416.txt.gz · Последнее изменение: — zis
