🚀 Как развернуть Django приложение на Heroku: подробное руководство

Как развернуть приложение Django на Heroku

Для развертывания приложения Django на Heroku, выполните следующие шаги:

  1. Установите Heroku CLI на свой компьютер, если еще не установили.
  2. sudo snap install heroku --classic
  3. Зарегистрируйтесь на Heroku, если у вас еще нет аккаунта.
  4. Создайте новое приложение на Heroku через интерфейс командной строки.
  5. heroku create
  6. Создайте файл Procfile в корневом каталоге вашего проекта Django.
  7. echo "web: gunicorn my_project.wsgi --log-file -" > Procfile
  8. Создайте новый git репозиторий и добавьте ваш проект в него.
  9. git init
    git add .
    git commit -m "Initial commit"
  10. Свяжите ваш локальный git репозиторий с Heroku.
  11. heroku git:remote -a название_вашего_приложения
  12. Выполните развертывание вашего приложения на Heroku.
  13. git push heroku master
  14. Запустите миграции вашей базы данных на Heroku.
  15. heroku run python manage.py migrate
  16. Создайте суперпользователя для вашего приложения на Heroku.
  17. heroku run python manage.py createsuperuser
  18. Откройте ваше приложение в браузере.
  19. heroku open

Теперь ваше приложение Django успешно развернуто на Heroku!

Детальный ответ

Как развернуть приложение Django на Heroku

В этой статье рассмотрим процесс развёртывания приложения Django на платформе Heroku. Heroku - это облачный сервис, который позволяет размещать и масштабировать веб-приложения.

Шаг 1: Подготовка проекта

Перед тем как начать процесс развёртывания, убедитесь, что ваш проект Django находится в состоянии готовности для размещения на Heroku. Следуйте этим шагам:

  1. Убедитесь, что у вас установлен Git на вашей машине и ваш проект Django находится в локальном Git-репозитории.
  2. # Установите Git, если еще не установлен
    $ sudo apt install git
    
    # Перейдите в папку вашего проекта Django
    $ cd myproject
    
    # Инициализируйте локальный Git-репозиторий
    $ git init
    
    # Добавьте все файлы проекта в репозиторий
    $ git add .
    
    # Создайте коммит
    $ git commit -m "Initial commit"
  3. Установите пакет gunicorn, который является рекомендуемым веб-сервером для развёртывания на Heroku.
  4. # Установите gunicorn
    $ pip install gunicorn
  5. Создайте файл `Procfile` в корневой папке вашего проекта и добавьте следующую строку, чтобы указать Heroku, как запускать ваше приложение:
  6. web: gunicorn myproject.wsgi
  7. Установите пакет `django-heroku`, который поможет настроить ваше приложение Django для работы на Heroku.
  8. # Установите django-heroku
    $ pip install django-heroku
  9. Измените настройки вашего проекта в файле `settings.py`, чтобы они соответствовали требованиям Heroku. В конец файла добавьте следующий код:
  10. import django_heroku
    
    # ... ваш код ...
    
    # Настройки Heroku
    django_heroku.settings(locals())

Шаг 2: Создание приложения Heroku

Теперь создадим новое приложение на платформе Heroku и подключим его к нашему проекту. Следуйте этим шагам:

  1. Установите инструмент командной строки Heroku, также известный как Heroku CLI.
  2. # Ubuntu / Debian
    $ curl https://cli-assets.heroku.com/install.sh | sh
    
    # macOS
    $ brew tap heroku/brew && brew install heroku
    
    # Windows
    Скачайте и установите MSI-файл с официального сайта Heroku
  3. Войдите в Heroku CLI, используя вашу учетную запись Heroku.
  4. $ heroku login
  5. Создайте новое приложение Heroku с помощью команды:
  6. $ heroku create

    Данная команда создаст новое приложение на Heroku и автоматически присвоит ему уникальное имя. Вы увидите URL вашего приложения в выводе команды.

  7. Добавьте репозиторий Heroku в ваш Git-репозиторий и включите загрузку кода на Heroku с помощью команд:
  8. $ git remote add heroku https://git.heroku.com/{app-name}.git
    $ git push heroku main

    Замените `{app-name}` на имя вашего Heroku-приложения, которое вы видели при создании приложения в предыдущем шаге.

Шаг 3: Настройка базы данных

Heroku предоставляет поддержку различных баз данных, и вам необходимо настроить ваше приложение, чтобы использовать одну из них. В этом примере мы будем использовать базу данных Postgres.

  1. Убедитесь, что у вас установлен пакет `dj-database-url`, который поможет нам настроить базу данных через переменные среды.
  2. $ pip install dj-database-url
  3. В файле `settings.py` вашего проекта, замените текущую конфигурацию базы данных на следующий код:
  4. import dj_database_url
    
    # ... ваш код ...
    
    # Конфигурация базы данных
    DATABASES = {'default': dj_database_url.config()}
    
    # ... ваш код ...
  5. Добавьте переменные среды для базы данных в вашем Heroku-приложении с помощью команды:
  6. $ heroku config:set DATABASE_URL={database-url}

    Замените `{database-url}` на URL вашей базы данных. Вы можете получить URL базы данных перейдя в настройки приложения на Heroku, в раздел "Раздел базы данных".

Шаг 4: Выполнение миграций и запуск приложения

Теперь наш проект Django настроен для размещения на Heroku, и его можно запустить. Выполните следующие шаги:

  1. Выполните миграции базы данных на Heroku:
  2. $ heroku run python manage.py migrate
  3. Создайте суперпользователя на Heroku (если требуется):
  4. $ heroku run python manage.py createsuperuser
  5. Запустите ваше приложение на Heroku:
  6. $ heroku ps:scale web=1
  7. Откройте ваше приложение в браузере с помощью команды:
  8. $ heroku open

Поздравляю! Ваше приложение Django успешно развёрнуто на платформе Heroku. Теперь вы можете делиться ссылкой на ваше приложение с другими и получать от них обратную связь.

Важно помнить, что Heroku предоставляет бесплатный тарифный план с ограниченными ресурсами. Если ваше приложение требует больше ресурсов, вам может потребоваться перейти на платный тарифный план или искать альтернативные облачные провайдеры.

Успехов в разработке вашего приложения Django на Heroku!

Видео по теме

How To Deploy A Django Project To Heroku

9 - How to Deploy Django Project To Heroku | Easiest Way! | 2022

Как подключить Javascript файл к html документу

Похожие статьи:

🚀 Как развернуть Django приложение на Heroku: подробное руководство