Документация ispmanager 6 lite, pro, host

Установка Django

Установка на Debian 11 и AlmaLinux 8

Перед установкой Django нужно убедиться, чтобы на сервере были установлены Nginx, Python и MySQL-сервер в разделе Основное меню  →  Настройки Конфигурация ПО. Cмотрите документацию.

Текущему пользователю в настройках панели должно быть разрешено использовать Python. Смотрите документацию.

Может потребоваться установка утилит sqlite3 gcc и пакеты разработки для сервера баз данных. 

Debian 11

apt install sqlite3 gcc libmariadb-dev 

AlmaLinux 8

yum install sqlite gcc mysql-devel 
Обратите внимание!
Прежде чем устанавливать пакеты для базы данных, нужно узнать, какой именно сервер базы данных установлен. После этого можно выбрать нужный пакет в зависимости от названия сервера.

 

В Основном меню выберите Сайты  →  Создать сайт. Заполните все поля и нажмите Создать.

  • Доменное имя - доменное имя, которое будет использоваться пользователями сети Интернет для доступа к публикуемой информации.
  • Директория сайта - путь к директории сайта. Указывается относительно домашней директории владельца.
  • Обработчик - в строке Обработчик выберите Python.
  • Конструктор сайта/CMS - после выбора Обработчик  → Python данная строка будет заблокирована.
  • Режим работы приложения - выберите подходящий режим работы для текущего пользователя.
  • Версия Python - выберите версию 3.11.

    Пояснение
  • Базы данных - выберите Создать новую базу данных или Не привязывать базу данных.

    Пояснение

     

  

Перейдите в Расширенные настройки.

 

Откройте вкладку Обработчик. Заполните поля как показано ниже и нажмите кнопку Создать.

  • Режим работы приложения - web-сервер Python;
  • Путь к серверу - project_name/manage.py где project_name - имя проекта Django;
  • Аргументы сервера - runserver <номер порта сайта> (Этот параметр будет известен после создания сайта);

    Обратите внимание!
    Если в настройках сайта не было установлено значение runserver <номер порта сайта>, то при запуске проекта возникнет ошибка.
    Можно использовать как runserver <порт>, так и указав порт вместе с адресом, например, runserver 127.0.0.1:<порт>.

     

  • Cпособ подключения - порт;
  • Версия Python - 3.11.

    Пояснение

  После заполнения полей, нажмите кнопку Создать.

 

В Основном меню выберите Сайты   Редактировать  Изменить. 

  

Откройте вкладку Обработчик (Python). Введите Порт в строке Аргументы сервера. 

Обратите внимание!
В данном примере для поля Аргументы сервера следует указать runserver 20000.
Обратите внимание!
Не забудьте нажать кнопку Сохранить.

 

Откройте Основное меню → Сайты → Файлы сайта.

 

 Удалите автоматически созданную директорию project_name.

   

Откройте Основное меню → Сайты → Выберите сайт →  Файлы конфигурации.

 


Откройте вкладку Конфигурационный файл Python. Введите django и нажмите Сохранить. 

 

Откройте Основное меню → Сайты. В правом углу созданного сайта нажмите на три точки. Выберите Shell-клиент.

   

Введите следующие команды.

source .venv/bin/activate

pip install --upgrade pip

pip install wheel

pip install mysqlclient 

django-admin startproject project_name 
Обратите внимание!
При проблемах установки mysqlclient установите конкретную версию, например, pip install mysqlclient==2.1.0.
Обратите внимание!
django-admin startproject project_name - project_name это имя проекта Django.

 

Откройте Основное меню → Сайты → Выберите сайт → Файлы сайта. 

Обратите внимание!
Перед выполнением операции удостоверьтесь, что находитесь в директории, содержащей ваш текущий проект.
Обратите внимание!
После завершения указанных выше шагов снова появится директорию с названием project_name.

 

Откройте директорию project_name.

 

Выберите файл settings.ру. Нажмите Редактировать → Открыть.

  

В секции ALLOWED_HOSTS = [] добавьте имя вашего домена и его псевдонимы.  

Обратите внимание!
Домены должны быть в кавычках: ALLOWED_HOSTS = ['имя сайта как в панели' , 'псевдоним']

В секции DATABASES укажите данные для подключения к базе MySQL.

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'имя_базы_данных',
        'USER': 'имя_пользователя_базы_данных',
        'PASSWORD': 'пароль_базы_данных',
        'HOST': '<ip-адрес или localhost>',
    }
}
Обратите внимание!
Если отсутствует база данных, создайте ее. Смотрите документацию.

  

Спуститесь ниже до секции STATIC_URL. Добавьте новую секцию STATIC_ROOT='static/'.

Нажмите на кнопку Сохранить и закрыть.

  

Откройте Основное меню → Сайты. Для доступа к дополнительным функциям на созданном сайте нажмите на иконку трех точек в правом верхнем углу.  Выберите Shell-клиент.

Создайте каталог со статическими файлами. Выполните команды указанные ниже.

source .venv/bin/activate

python project_name/manage.py collectstatic (Где project_name - Имя проекта Django).

 

  Выполните миграцию проекта MySQL. Введите команду.

python project_name/manage.py migrate (Где project_name - имя проекта Django).

Нажмите кнопку Сохранить и закрыть.

 

Откройте Основное меню → Сайты → Выберите сайт → Файлы сайта. Создайте в корневом каталоге конфигурационный файл с именем passenger_wsgi.ру. Нажмите на кнопку Создать.

  

Откройте Основное меню → Сайты → Выберите сайт → Файлы сайта → Выберите файл passenger_wsgi.ру → Редактировать  → Открыть.

  

В файле passenger_wsgi.ру выполните следующие команды.

1 # -*- coding: utf-8 -*-
2 import os, sys
3 sys.path.insert(0, '/var/www/<имя пользователя панели>/data/www/<имя сайта>/project_name')
4 sys.path.insert(1, '/var/www/<имя пользователя панели>/data/www/<имя сайта>/.venv/lib/python<номер версии>/site-packages')
5 os.environ['DJANGO_SETTINGS_MODULE'] = 'project_name.settings'
6 from django.core.wsgi import get_wsgi_application
7 application = get_wsgi_application() 

1. В строке sys.path.insert(0, '/var/www/<имя пользователя панели>/data/www/<имя сайта>/project_name') - укажите путь к вашему проекту.

2. В строке sys.path.insert(1, '/var/www/<имя пользователя панели>/data/www/<имя сайта>/.venv/lib/python<номер версии>/site-packages') - укажите версию Python, которую вы выбрали при создании сайта.

3. В строке os.environ['DJANGO_SETTINGS_MODULE'] = 'project_name.settings' - измените project_name на название вашего проекта.

  После того как все команды будут выполнены, нажмите Сохранить и закрыть.

  

Откройте Основное меню → Сайты → Выберите сайт → Нажмите на три точки → Перезапустить (Python).

После этого в браузере откроется стартовая страница Django.