Скачать примерный проект в формате .zip
django-sample.zip
Примерное руководство по деплою проекта на Django в cPanel-хостинге
Данная статья послужит небольшим руководством по запуску вашего Django-проекта на нашем хостинге через панель управления cPanel.
Статья включает следующие шаги:
Внимательно следуйте процессу и выполняйте шаги в правильной последовательности. Это поможет вам лучше понять процесс деплоя Django-проекта и впоследствии применять полученные знания к собственным проектам.
В качестве примера мы выбрали проект под названием "Link Vault", то есть хранилище полезных ссылок. В нём мы рассмотрим добавление категорий и самих ссылок.
Проект состоит из двух простых веб-страниц (список ссылок и форма добавления ссылки), а Django контролирует добавление каждой категории и ссылки в базу данных.
settings.py и wsgi.py.core:venv — это папка виртуального окружения. В ней находятся все библиотеки, используемые проектом. Загружать её на хостинг не требуется. На хостинге виртуальное окружение создаётся отдельно и хранится в другом месте. Это мы рассмотрим позже.
Команды для создания и активации виртуального окружения:.env — файл, содержащий все конфиденциальные переменные окружения, ключи и пароли.requirements.txt используется для хранения списка всех необходимых библиотек с их версиями и удобной последующей установки.
Создаётся он следующим образом:Полный проект предоставляется вам для изучения и ознакомления:
django-sample.zip
Откройте папку проекта через терминал и выполните:
Для начала спланируем последовательность действий:
Если готовы, приступим!
Для проекта создадим поддомен django.scroll.uz на нашем хостинге.
Интерфейс "Database Wizard" в cPanel пошагово проведёт вас через процесс создания базы данных MySQL, пользователя и назначения необходимых прав доступа.
scroll_django (часть scroll_ формируется автоматически на основе имени пользователя хостинга и у вас будет другой).scroll_django-user (у вас имя также будет отличаться). Задайте ему надёжный пароль и сохраните его.Сохраните имя базы данных, имя пользователя и пароль.
Откройте интерфейс "Setup Python App" в cPanel и нажмите кнопку "+ Create Application".
Заполните форму следующим образом:
django.scroll.uz, поскольку при создании поддомена cPanel автоматически создаёт одноимённую папку.django.scroll.uz;django.scroll.uz внутри директории пользователя /home/scroll/django.log.Python App будет создано, и здесь следует обратить внимание на три важных момента:
Для этого используем интерфейс "File Manager" в cPanel.
Прежде всего необходимо отредактировать файл .env. Для этого нажмите правой кнопкой мыши по файлу и выберите пункт "Edit".
Файл .env мы изменили следующим образом:
Вам необходимо:
Следующий файл, который необходимо настроить, это конфигурационный файл Passenger, созданный для Python App в cPanel.
В нашем проекте папка проекта называется core, поэтому для неё уже подготовлен пример файла Passenger под названием sample__passanger_wsgi.py.
Скопируйте содержимое этого файла в passanger_wsgi.py.
Через интерфейс "Terminal" в cPanel установим все необходимые библиотеки из файла requirements.txt.
Также выполните команду python3 manage.py migrate для применения миграций в новой базе данных MySQL и команду python3 manage.py createsuperuser для создания администратора.
Чтобы все внесённые изменения вступили в силу, необходимо перезапустить Python App. Для этого снова откройте интерфейс "Setup Python App" и нажмите кнопку перезапуска приложения.
На этом процесс загрузки проекта на хостинг завершён. Теперь можно открыть его через специально созданный поддомен и проверить работу.
Теперь вы умеете запускать Django-проекты на хостинге. Поздравляем!
— Но разве это всё? — Нет. Важно не только правильно развернуть проект, но и правильно удалить его и очистить хостинг от связанных файлов.
Причина проста: некоторые наши клиенты сталкивались с различными проблемами из-за неправильного удаления Python App.
Откройте интерфейс "Setup Python App" в cPanel и нажмите кнопку "Stop" для приложения.
Затем нажмите кнопку "Destroy", чтобы полностью удалить его.