Установка на Ubuntu 16.04
В инструкции все команды по умолчанию выполняются от имени пользователя root.
Обновление ОС
apt-get -y update
apt-get -y upgrade
Устанавливаем Postgresql
Настраиваем локаль ru_RU:
locale-gen ru_RU.UTF-8
dpkg-reconfigure locales
export LC_ALL="ru_RU.UTF-8"
echo export LC_ALL="ru_RU.UTF-8" >> ~/.bashrc
apt-get -y install postgresql unzip
В процессе установки будет создан новый пользователь postgres
.
Переключаемся на пользователя postgres
:
su postgres
Создадим нового пользователя scuser
(владельца базы данных Severcart
PostgreSQL) из командной оболочки psql
:
psql
CREATE USER scuser WITH PASSWORD '123456';
Создаём базу данных severcart
:
CREATE DATABASE severcart WITH ENCODING='UTF8' OWNER=scuser CONNECTION LIMIT=-1 template=template0;
UPDATE pg_database SET datcollate='ru_RU.UTF-8', datctype='ru_RU.UTF-8' WHERE datname='severcart';
Для выхода из оболочки psql
набираем:
\q
Возвращаемся к пользователю root
:
su -
Устанавливаем пакет virtualenv
apt-get -y install python-virtualenv
Создаём виртуальное окружение
virtualenv --distribute -p /usr/bin/python3 /var/venv/
mkdir -p /var/venv/severcart/
Скачиваем и распаковываем пакет Severcart
Скачиваем *.zip
файл архива с
официального сайта программы.
Далее распаковываем архив в каталог /var/venv/severcart
unzip 1_X_X.zip -d /var/venv/severcart
Установка зависимостей
Активируем виртуальное окружение:
source /var/venv/bin/activate
Далее запускаем файл
python3 /var/venv/severcart/tkinstaller/install.py
В ходе установки будет произведена установка зависимостей, миграция схемы базы данных, создание администратора severcart.
Установка и настройка Nginx
Отключаем службу apache2
и её автозагрузку:
service apache2 stop
systemctl disable apache2
apt-get -y install nginx supervisor
Заменяем содержимое файла /etc/nginx/sites-available/default
следующим:
server {
listen 80;
server_name 0.0.0.0; #либо ip, либо доменное имя
access_log /var/log/nginx/severcart_access.log;
error_log /var/log/nginx/severcart_error.log;
location /static/ {
root /var/venv/severcart/;
expires 30d;
}
location /media/ {
root /var/venv/severcart/;
expires 30d;
}
location / {
proxy_pass http://127.0.0.1:9000;
proxy_set_header Host $server_name;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
Активируем автозагрузку nginx
и supervisord
.
systemctl enable supervisor
systemctl enable nginx
chmod 755 -R /var/venv/severcart/
chown nobody:nogroup -R /var/venv/severcart/
Чтобы приложение автоматически запускалось после перезагрузки, необходимо
настроить supervisor
. Для этого создадим конфигурационный файл:
cd /etc/supervisor/conf.d/
touch severcart.conf
В файл записываем:
[program:severcart]
command=/var/venv/bin/gunicorn conf.wsgi_prod:application -c /var/venv/severcart/conf/gunicorn.conf.py
directory=/var/venv/severcart
user=nobody
autorestart=true
redirect_stderr=true
Активируем конфигурацию:
supervisorctl reread
supervisorctl update
supervisorctl status severcart
supervisorctl restart severcart
Перезагружаем сервер Nginx:
service nginx restart
Далее проверяем в браузере открытие страницы. Если увидите приглашение ввести логин и пароль, значит установка успешно завершена.
Внимание!!! После успешно установки программы пароль пользователя PostgreSQL scuser рекомендуется поменять на более стойкий. Инструкция по смене пароля здесь.
Если установить приложение не получается, то свяжитесь с тех. поддержкой info@severcart.ru.