Ispmanager 6 lite, pro, host

Установка Django

Django — это высокоуровневый веб-фреймворк на языке Python, предназначенный для быстрой и эффективной разработки веб-приложений. Он включает в себя множество встроенных компонентов, таких как система аутентификации, админ-панель и инструменты для работы с базами данных.

Основные области применения Django:

  • контент-менеджмент системы (CMS);
  • электронная коммерция;
  • социальные сети;
  • корпоративные приложения;
  • микросервисы и API.

Поддерживаемые ОС

Использовать Django можно на любой ОС из списка поддерживаемых для установки ispmanager.

Установка

Перед установкой убедись, что:

  • на сервере установлены: Nginx, Python и MySQL-сервер. Для успешной установки могут потребоваться дополнительные компоненты ПО;
  • текущему пользователю в настройках панели должно быть разрешено использовать Python;
  • может потребоваться установка утилит sqlite3 gcc и пакеты разработки для сервера баз данных.   

    Пояснение

    Debian 11

    apt install sqlite3 gcc libmariadb-dev 

    AlmaLinux 8

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

Рассмотрим установку на примере ОС Debian 11 и AlmaLinux 8.

Выполните создание сайта.

  • перейдите в основное меню;
  • выберите раздел Сайты;
  • нажмите кнопку Создать сайт.

 

Заполните все строки и нажмите кнопку Создать.

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

    Пояснение

    Почему лучше использовать Python 3.11?

     

    Совместимость и производительность.

    • включает последние улучшения языка и стандартной библиотеки;
    • быстрее предыдущих версий благодаря улучшениям в интерпретаторе.

     

    Долгосрочная поддержка

    • новые версии Python получают обновления дольше.

     

    На что повлияет выбор версии Python?

    • новые синтаксические конструкции и улучшенные функции доступны только в Python 3.11.

     

    Рекомендации

    Использовать Python 3.11, если:

    • начинается новый проект;
    • нужны новые возможности и улучшенная производительность;
    • все зависимости совместимы с этой версией.

    Оставаться на текущей версии Python, если:

    • есть устаревшие библиотеки, не поддерживающие Python 3.11;
    • проект стабилен на более старой версии Python и нет необходимости в обновлении.

     

    Пример

    Если библиотека django-someplugin поддерживает только Python 3.10, лучше подождать обновления до совместимой с Python 3.11 версии

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

    Пояснение
    Привязка базы данных к веб-сайту не является обязательной функцией. Тем не менее использование данной опции позволит мгновенно создать базу данных при создании сайта через панель управления. Если есть необходимость, всегда можно создать базу данных позднее. Дополнительные инструкции доступны в соответствующей документации.

 

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

 

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

  • Режим работы приложения  web-сервер Python;
  • Путь к серверу — для запуска сервера необходимо указать путь к файлу manage.py проекта. Путь к файлу имеет следующий формат, где project_name - имя проекта Django;                     
  • Аргументы сервера — для запуска сервера используйте команду runserver <номер порта>. Этот параметр будет известен после создания сайта. Если в настройках сайта не было установлено значение для runserver <номер порта>, то при запуске проекта возникнет ошибка.

    Пояснение

    Можно использовать команду в одном из следующих форматов.

    Пример использования

    • runserver <порт>;
    • runserver 127.0.0.1:<порт>.

    Запуск сервера на порту 8000:

    python project_name/manage.py runserver 8000

    Запуск сервера на определённом IP и порту:

    python project_name/manage.py runserver 127.0.0.1:8000
  • Cпособ подключения  порт;
  • Версия Python - 3.11 

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

 

Выполните следующие действия.

  • перейдите в основное меню;
  • выберите вкладку Сайты;
  • выберите сайт;
  • нажмите на кнопку .

 

Выполните следующие действия.

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

    Пояснение
     В данном примере для поля Аргументы сервера следует указать runserver 20000.    

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

 

Выполните удаление автоматически созданной директории.

  • перейдите в основное меню;
  • выберите вкладку Сайты;
  • выберите сайт;
  • нажмите кнопку Файлы сайта.

 

 
Удалите директорию project_name.

  • выберите директорию project_name;
  • нажмите вкладку Редактировать;
  • нажмите кнопку Удалить

 

Выполните следующие действия.

  • перейдите в основное меню;
  • выберите вкладку Сайты;
  • выберите сайт;
  • нажмите на вкладку Конфиг.файлы.

 

Введите 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.ру выполните команды указанные ниже;
  • после того как все команды будут выполнены, нажмите Сохранить и закрыть.
# -*- coding: utf-8 -*-
import os, sys
sys.path.insert(0, '/var/www/<имя пользователя панели>/data/www/<имя сайта>/project_name')
sys.path.insert(1, '/var/www/<имя пользователя панели>/data/www/<имя сайта>/.venv/lib/python<номер версии>/site-packages')
os.environ['DJANGO_SETTINGS_MODULE'] = 'project_name.settings'
from django.core.wsgi import get_wsgi_application
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.

  • перейдите в основное меню;
  • выберите вкладку Сайты;
  • выберите сайт;
  • нажмите на кнопку ;
  • нажмите кнопку Перезапустить (Python).

 

 В браузере откроется стартовая страница Django.  

В этой статье