установка АИСОУ 7.6 под Линукс - Ruslan - 04-10-2018
основная инструкция по установке на Ubuntu 16.04 LTS
Опционально обновим систему до последнего состояния:
Код: $ sudo -i
# apt update && apt upgrade -y
Установить требуемые пакеты:
Код: # apt install python-pip build-essential unzip libmysqlclient-dev python-dev libxml2-dev libxslt1-dev libssl-dev libffi-dev apache2 libapache2-mod-wsgi python-svn
Распакуем архив с АСИОУ:
Код: # unzip /tmp/www7_6.zip -d /var/
Установим требуемые пакеты для Python:
Код: # pip install -r /var/www/www/requirements.txt
# pip install --upgrade git+https://github.com/sokolovs/django-piston.git
Установим MYSQL:
Код: # apt install mysql-server mysql-client
Создадим БД и пользователя СУБД (вместо asiou_prod указать желаемое имя БД, вместо PASSWORD следует задать надежный пароль):
Код: # mysql -uroot -p
mysql> CREATE DATABASE asiou_prod CHARACTER SET utf8 COLLATE utf8_general_ci;
mysql> GRANT ALL PRIVILEGES ON asiou_prod.* TO 'asiouser'@'localhost' IDENTIFIED BY 'PASSWORD';
mysql> FLUSH PRIVILEGES;
Развернем дамп БД АСИОУ (Файл дампа БД должен быть загружен на сервер заранее):
Код: # mysql -uasiouser -p asiou_prod < [ПУТЬ ДО ДАМПА БД]
Настроим СУБД в АСИОУ для этого отредактируем файл /var/www/asiou/db.ini заполним данными полученными на этапе создание БД (Имя пользователя, пароль, имя БД)
Подготовим БД для перехода на новую версию АСИОУ:
Код: # mysql -uasiouser -p asiou_prod < /var/www/sql/django_migrations.sql
# cd /var/www
# python -W ignore manage.py migrate asiou --fake
Привести файл /etc/apache2/sites-available/000-default.conf к виду:
Код: WSGIPythonHome "/usr/local/lib/python2.7"
<VirtualHost *:80>
WSGIDaemonProcess app user=www-data group=www-data processes=1 home=/var/www
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
</Directory>
#ServerName 10.76.51.28:80
WSGIScriptAlias / "/var/www/wsgi.py"
<Directory "/var/www">
WSGIProcessGroup app
WSGIApplicationGroup %{GLOBAL}
WSGIScriptReloading On
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
# vim: syntax=apache ts=4 sw=4 sts=4 sr noet
Сменим владельца каталога АСИОУ:
Код: # chown www-data:www-data /var/www -R
Добавим бит выполнения для файла wsgi.py:
Код: # chmod +x /var/www/wsgi.py
Перезапустим apache:
Код: # service apache2 restart
После чего можно зайти по адресу http сервера в интерфейс АСИОУ
Примечания:
Файл логов cont_export.log в каталоге www следует вынести в отдельный каталог логов (проще настроить ротацию, все-таки это не статический файл, а также удобнее монтировать каталог log в хост машину при использовании докера)
Данная инструкция проверена на уже имеющийся БД АСИОУ, развертка с пустой БД не проводилась, для развертки с нуля требуется информация от разработчиков в каком порядке создавать БД и какие sql файлы использовать
Так же предлагаю использовать докер для приложения АСИОУ, в этом случае можно избавится от привязки к конкретному дистрибутиву и использовать на любом где можно установить докер
RE: установка АИСОУ 7.6 под Линукс - Ruslan - 08-10-2018
centos 6.8 (обновление версии 7.5.9)
Пока сделано частично:
# pip install -r /var/www/www/requirements.txt
# pip install --upgrade git+https://github.com/sokolovs/django-piston.git
Подготовим БД для перехода на новую версию АСИОУ:
Код:
Код: # mysql -uasiouser -p asiou_prod < /var/www/sql/django_migrations.sql
# cd /var/www
# python -W ignore manage.py migrate asiou --fake
Далее - изменение параметров запуска сервера приложений. Ставим uwsgi и модуль python
Код: # yum install uwsgi
# yum install uwsgi-plugin-python2
создаем файл, с расширением ini в каталоге /etc/uwsgi.d/asiou.ini
Код: [uwsgi]
# Настройки, связанные с Django
# Корневая папка проекта (полный путь)
uid = asiou
gid = asiou
chdir = /home/asiou/www/
# Django wsgi файл
wsgi-file = /home/asiou/www/wsgi.py
# полный путь к виртуальному окружению
virtualenv = /home/asiou/.venv/asiou_venv
# общие настройки
# master
master = true
protocol = uwsgi
# максимальное количество процессов
processes = 10
# полный путь к файлу сокета
socket = /var/run/asiou.sock
plugins = python
chown-socket = nginx:nginx
chmod-socket = 660
# очищать окружение от служебных файлов uwsgi по завершению
vacuum = true
Настройки nginx.
Файл /etc/nginx/uwsgi_params
Код: uwsgi_param QUERY_STRING $query_string;
uwsgi_param REQUEST_METHOD $request_method;
uwsgi_param CONTENT_TYPE $content_type;
uwsgi_param CONTENT_LENGTH $content_length;
uwsgi_param REQUEST_URI $request_uri;
uwsgi_param PATH_INFO $document_uri;
uwsgi_param DOCUMENT_ROOT $document_root;
uwsgi_param SERVER_PROTOCOL $server_protocol;
uwsgi_param REQUEST_SCHEME $scheme;
uwsgi_param HTTPS $https if_not_empty;
uwsgi_param REMOTE_ADDR $remote_addr;
uwsgi_param REMOTE_PORT $remote_port;
uwsgi_param SERVER_PORT $server_port;
uwsgi_param SERVER_NAME $server_name;
Файл /etc/nginx/conf.d/asiou_vhost.conf
Код: upstream django_aisdou {
server unix:///var/run/asiou.sock fail_timeout=0;
}
# конфигурация веб-сервера
server {
proxy_read_timeout 3600;
proxy_send_timeout 3600;
uwsgi_send_timeout 3600;
uwsgi_read_timeout 3600;
error_log /var/log/nginx/asiou111_error.log;
access_log /var/log/nginx/asiou111_access.log;
server_tokens off;
# порт, который будет слушать веб-сервер в ожидании запросов от пользователй
listen 80;
# доменное имя
server_name _; # замените на собственный домен или IP адрес
charset utf-8;
# максимальный размер загружаемых на сервер данных
client_max_body_size 75M;
location /static {
alias /home/asiou/www/static;
# Gzip
gzip on;
gzip_min_length 8192;
gzip_types text/plain text/css text/xml text/javascript application/x-javascript application/xml;
gzip_disable "msie6";
}
location /media {
alias /home/aisdou/www/asiou/media;
}
location / {
# Maintenance mode
if (-f /home/asiou/mntnce/maintenance_on.html) {
return 503;
}
uwsgi_pass django_aisdou;
include /etc/nginx/uwsgi_params;
}
# Error page for maintenance mode
error_page 503 /maintenance_on.html;
location = /maintenance_on.html {
root /home/asiou/mntnce/;
}
}
шаманство с uwsgi - и все заработало. на nginx
Дополнительно: если поставили виртуальное окружение, то все команды, начинающиеся с python вводим под пользователем asiou (или тем, где стоит виртуальное окружение)
bash-4.1$ cd
bash-4.1$ source .venv/asiou_venv/bin/activate
(asiou_venv) bash-4.1$ cd /home/asiou/www
(asiou_venv) bash-4.1$ python -W ignore manage.py migrate asiou --fake
RE: установка АИСОУ 7.6 под Линукс - Ruslan - 08-10-2018
здесь может быть про докер будет
RE: установка АИСОУ 7.6 под Линукс - tarasalex - 11-10-2018
Руслан.
Несколько вопросов.
1. Сам пробовал ставить и работать в этой версии Ubuntu. Я весной пробовал и не смог добиться работы ряда существенных элементов. Например, даты в электронном журнале. Или формирование ряда отчетов.
2. Какой ВИПНЕТ ты предлагаешь ставить? Или у тебя появились возможности настроить 4,2,?
3. У тебя в инструкции написано # unzip /tmp/www7_6.zip -d /var/ . А откуда ты берешь файл www7_6.zip ? или это заготовка на будущее?
4. По этой команде pip install -r /var/www/www/requirements.txt процес установки обрывается на 5 пакетах. Как ты предлагаешь его решать?
5. Как ты предлагаешь работать в mysql 5.5 с групповыми операциями? Они не выполняются без специальной настройки сонфига.
Это только то что я вспомнил.
RE: установка АИСОУ 7.6 под Линукс - Ruslan - 11-10-2018
(11-10-2018, 08:45)tarasalex Писал(а): Руслан.
Несколько вопросов.
1. Сам пробовал ставить и работать в этой версии Ubuntu. Я весной пробовал и не смог добиться работы ряда существенных элементов. Например, даты в электронном журнале. Или формирование ряда отчетов.
2. Какой ВИПНЕТ ты предлагаешь ставить? Или у тебя появились возможности настроить 4,2,?
3. У тебя в инструкции написано # unzip /tmp/www7_6.zip -d /var/ . А откуда ты берешь файл www7_6.zip ? или это заготовка на будущее?
4. По этой команде pip install -r /var/www/www/requirements.txt процес установки обрывается на 5 пакетах. Как ты предлагаешь его решать?
5. Как ты предлагаешь работать в mysql 5.5 с групповыми операциями? Они не выполняются без специальной настройки сонфига.
Это только то что я вспомнил.
Это обновленная версия, в продуктив еще не выложена. Мы ее тестировали на совместимость с Линуксом.
Будут серьезные изменения. В частности: переход на apache и django 1.11
по випнету - самый больной вопрос. 4.2 больше не пытался ставить. может сделаю еще один подход. но факт в том, что без випнета сейчас сервер АСИОУ бесполезен.
развертку на Centos 6.8 попробуем в ближайшее время (там 3 випнет работает)
requirements.txt подчистили. у нас все заработало. конкретные вопросы будем решать уже тогда, когда версия станет доступна для установки.
Для желающих - версия для тестирования здесь: http://asiou.coikko.ru/static/update_version/www7_6.zip
Это тестовая версия. Ее еще нельзя использовать для работы!!! Точная дата выхода пока неизвестна.
RE: установка АИСОУ 7.6 под Линукс - tarasalex - 11-10-2018
(11-10-2018, 09:34)Ruslan Писал(а): (11-10-2018, 08:45)tarasalex Писал(а): Руслан.
Несколько вопросов.
1. Сам пробовал ставить и работать в этой версии Ubuntu. Я весной пробовал и не смог добиться работы ряда существенных элементов. Например, даты в электронном журнале. Или формирование ряда отчетов.
2. Какой ВИПНЕТ ты предлагаешь ставить? Или у тебя появились возможности настроить 4,2,?
3. У тебя в инструкции написано # unzip /tmp/www7_6.zip -d /var/ . А откуда ты берешь файл www7_6.zip ? или это заготовка на будущее?
4. По этой команде pip install -r /var/www/www/requirements.txt процес установки обрывается на 5 пакетах. Как ты предлагаешь его решать?
5. Как ты предлагаешь работать в mysql 5.5 с групповыми операциями? Они не выполняются без специальной настройки сонфига.
Это только то что я вспомнил.
Это обновленная версия, в продуктив еще не выложена. Мы ее тестировали на совместимость с Линуксом.
Будут серьезные изменения. В частности: переход на apache и django 1.11
по випнету - самый больной вопрос. 4.2 больше не пытался ставить. может сделаю еще один подход. но факт в том, что без випнета сейчас сервер АСИОУ бесполезен.
развертку на Centos 6.8 попробуем в ближайшее время (там 3 випнет работает)
requirements.txt подчистили. у нас все заработало. конкретные вопросы будем решать уже тогда, когда версия станет доступна для установки.
Для желающих - версия для тестирования здесь: http://asiou.coikko.ru/static/update_version/www7_6.zip
Это тестовая версия. Ее еще нельзя использовать для работы!!! Точная дата выхода пока неизвестна. Руслан. А на какой версии Ubutnu ставил - 64-х ?
RE: установка АИСОУ 7.6 под Линукс - Ruslan - 11-10-2018
(11-10-2018, 10:42)tarasalex Писал(а): (11-10-2018, 09:34)Ruslan Писал(а): (11-10-2018, 08:45)tarasalex Писал(а): Руслан.
Несколько вопросов.
1. Сам пробовал ставить и работать в этой версии Ubuntu. Я весной пробовал и не смог добиться работы ряда существенных элементов. Например, даты в электронном журнале. Или формирование ряда отчетов.
2. Какой ВИПНЕТ ты предлагаешь ставить? Или у тебя появились возможности настроить 4,2,?
3. У тебя в инструкции написано # unzip /tmp/www7_6.zip -d /var/ . А откуда ты берешь файл www7_6.zip ? или это заготовка на будущее?
4. По этой команде pip install -r /var/www/www/requirements.txt процес установки обрывается на 5 пакетах. Как ты предлагаешь его решать?
5. Как ты предлагаешь работать в mysql 5.5 с групповыми операциями? Они не выполняются без специальной настройки сонфига.
Это только то что я вспомнил.
Это обновленная версия, в продуктив еще не выложена. Мы ее тестировали на совместимость с Линуксом.
Будут серьезные изменения. В частности: переход на apache и django 1.11
по випнету - самый больной вопрос. 4.2 больше не пытался ставить. может сделаю еще один подход. но факт в том, что без випнета сейчас сервер АСИОУ бесполезен.
развертку на Centos 6.8 попробуем в ближайшее время (там 3 випнет работает)
requirements.txt подчистили. у нас все заработало. конкретные вопросы будем решать уже тогда, когда версия станет доступна для установки.
Для желающих - версия для тестирования здесь: http://asiou.coikko.ru/static/update_version/www7_6.zip
Это тестовая версия. Ее еще нельзя использовать для работы!!! Точная дата выхода пока неизвестна. Руслан. А на какой версии Ubutnu ставил - 64-х ?
да.
RE: установка АИСОУ 7.6 под Линукс - tarasalex - 29-10-2018
попался свободный диск и попробовал установить.
Сломался на команде
# pip install --upgrade git+https://github.com/sokolovs/django-piston.git
Получил такое -
Collecting git+https://github.com/sokolovs/django-piston.git
Cloning https://github.com/sokolovs/django-piston.git to /tmp/pip-HYs2Z6-build
Error [Errno 2] Нет такого файла или каталога while executing command git clone -q https://github.com/sokolovs/django-piston.git /tmp/pip-HYs2Z6-build
Cannot find command 'git'
Т.е. надо ставить еще и git отдельно ставить.
RE: установка АИСОУ 7.6 под Линукс - fstab - 31-10-2018
(29-10-2018, 19:43)tarasalex Писал(а): попался свободный диск и попробовал установить.
Сломался на команде
# pip install --upgrade git+https://github.com/sokolovs/django-piston.git
Получил такое -
Collecting git+https://github.com/sokolovs/django-piston.git
Cloning https://github.com/sokolovs/django-piston.git to /tmp/pip-HYs2Z6-build
Error [Errno 2] Нет такого файла или каталога while executing command git clone -q https://github.com/sokolovs/django-piston.git /tmp/pip-HYs2Z6-build
Cannot find command 'git'
Т.е. надо ставить еще и git отдельно ставить.
да установите git.
apt install -y git
RE: установка АИСОУ 7.6 под Линукс - tarasalex - 09-11-2018
Спасибо. Я, конечно, поставил. Но это надо указывать в описании.
|