Инструменты пользователя

Инструменты сайта


mp_doc:imain_install_ubuntu_web

Установка узла веб интерфейса (Ubuntu Server 18.04)

1. Создадим пользователя mpweb (из под root):

adduser mpweb

2. Создать каталог для ведения логов и назначить права (из под root):

mkdir /var/log/mpweb && chown mpweb:adm /var/log/mpweb

3. Установим зависимости (из под root):

apt install subversion python3 python3-pip gettext libmysqlclient-dev
pip3 install virtualenv virtualenvwrapper setuptools

4. Добавим в конец /home/mpweb/.bashrc

export PYTHONPATH=/usr/bin/python3
export VIRTUALENVWRAPPER_PYTHON=$PYTHONPATH
export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh

5. Это важно!!! ВОЙДЕМ под пользователем mpweb!

6. Создадим виртуальное окружение:

mkvirtualenv mpweb
workon mpweb

Настройка интерфейса администратора

Все действия выполняем из под пользователя mpweb, если не указано иное.
1. Создадим скрипт (/home/mpweb/mpweb.sh) получения и обновления исходников:

#!/bin/sh

#
# Global
pth=/home/mpweb/minipbx_web
user=XXX

# Checkout!
#mkdir $pth
#svn checkout --username $user http://svn.minipbx.ru/minipbx_web/mpweb $pth

#
# Update
svn update --username $user $pth

2. Сделаем исполняемым:

chmod +x /home/mpweb/mpweb.sh

3. Первый раз делаем checkout, потом update. 4. Установим зависимости:

python3 ./setup.py install

5. Скопируем файл настроек и настроем его:

cp /home/mpweb/minipbx_web/development.ini.sample /home/mpweb/minipbx_web/development.ini
cp /home/mpweb/minipbx_web/production.ini.sample /home/mpweb/minipbx_web/production.ini

Настройка начинается с базы данных и секретных ключей:

  • sqlalchemy.url - строка подключения к БД minipbx;
  • auth.secret - секрет для авторизации;
  • session.key - ключ для передачи параметров сессии;
  • session.secret - секрет для передачи параметров сессии;

Для генерации случайных ключей воспользуйтесь командой:

openssl rand -hex 32

6. Для тестирования иногда нужно запускать сервер в терминале. Для этого скопируем скрипт запуска (из под root):

mkdir /home/mpweb/.local/bin
cp /home/mpweb/minipbx_web/scripts/run_mpweb /home/mpweb/.local/bin/

7. Для запуска в качестве службы скопируем systemd скрипт и включим его автоматический запуск (из под root):

cp /home/mpweb/minipbx_web/scripts/mpweb.service  /lib/systemd/system/
systemctl enable mpweb
systemctl start mpweb
systemctl status mpweb

8. В каталоге minipbx_web выполнить lcompile.sh. Скрипт выполняет обновление перевода (ru\en)
9. Не совсем правильная штука, но чтобы не выполнять при каждом обновлении setup.py, сделаем:

cd /home/mpweb/.virtualenvs/mpweb/lib/python3.6/site-packages/mpweb-1.0-py3.6.egg
mv mpweb mpweb.1
ln -s /home/mpweb/minipbx_web/mpweb mpweb

Каталог mpweb.1 можно удалить.

Настройка интерфейса пользователя

Все действия выполняем из под пользователя mpweb, если не указано иное.
1. Создадим скрипт (/home/mpweb/mpami.sh) получения и обновления исходников (из под пользователя mpweb):

#!/bin/sh

#
# Global
pth=/home/mpweb/minipbx_ami
user=XXX

# Checkout!
#mkdir $pth
#svn checkout --username $user http://svn.minipbx.ru/minipbx_web/mpami $pth

#
# Update
svn update --username $user $pth

2. Сделаем исполняемым:

chmod +x /home/mpweb/mpami.sh

3. Первый раз делаем checkout, потом update.
4. Установим зависимости:

bash /home/mpweb/minipbx_ami/setup.txt

5. Скопируем файл настроек и настроем его:

cp /home/mpweb/minipbx_ami/mpami.ini.sample /home/mpweb/minipbx_ami/mpami.ini

Настройка начинается с базы данных и секретного ключа:

  • [DB].url - строка подключения к БД minipbx;
  • [MAIN].secret_key - ключ для шифрования JWT;

Для генерации случайных ключей воспользуйтесь командой:

openssl rand -hex 32

6. Для тестирования иногда нужно запускать сервер в терминале. Для этого скопируем скрипт запуска (из под root):

mkdir /home/mpweb/.local/bin
cp /home/mpweb/minipbx_ami/bin/run_mpami /home/mpweb/.local/bin/

7. Для запуска в качестве службы скопируем systemd скрипт и включим его автоматический запуск (из под root):

cp /home/mpweb/minipbx_ami/bin/mpami.service  /lib/systemd/system/
systemctl enable mpami
systemctl start mpami
systemctl status mpami

8. В каталоге minipbx_ami выполнить lcompile.sh. Скрипт выполняет обновление перевода (ru\en)

mp_doc/imain_install_ubuntu_web.txt · Последнее изменение: 2024/03/31 22:03 — 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki