Итак, вы только что создали простой веб-сайт-портфолио на Python и хотите разместить его на бесплатном хостинге. Вы слышали о бесплатном хостинге Heroku, но не совсем понимаете его технические детали.
Это руководство поможет вам проработать весь процесс бесплатного размещения вашего веб-сайта Python на Heroku гораздо более простым способом. Мы предполагаем, что у вас есть базовые знания Python и хотя бы одного из его фреймворков, предпочтительно Django.
Почему выбирают Heroku?
Heroku - это провайдер веб-хостинга «платформа как услуга» (PaaS), который управляет своей инфраструктурой на том, что он называет Dynos. Он позволяет вам сосредоточиться на развертывании, в то же время заботясь о трудностях, связанных с обслуживанием и построением вашей веб-инфраструктуры.
Если вы не можете позволить себе платный хостинг, но хотите быстро разместить онлайн-портфолио, вы можете рассмотреть вариант размещения его на Heroku. Помимо бесплатного использования, разместить свой сайт на Heroku довольно быстро.
Конечно, есть и другие платформы, на которых вы можете бесплатно разместить свой веб-сайт Python, например Amazon Web Services и PythonAnywhere. Но процесс хостинга на Heroku прост, особенно для людей, не имеющих предварительных знаний о развертывании.
Когда вы размещаете веб-сайт на Heroku бесплатно, вам необязательно иметь доменное имя. Все, что вам нужно, это указать имя вашего приложения на платформе хостинга. Затем Heroku создает app.herokuapp.com локатор для вас. Когда вы пользуетесь этим бесплатным сервисом, ваш сайт работает на Heroku Dynos.
Если позже вы решите увеличить масштаб и получить доменное имя, это будет так же легко и быстро, но за это придется заплатить. Огромные затраты на поддержание обновления могут заставить вас переосмыслить его, но оно того стоит, если вы полны решимости инвестировать в проект больше.
Давайте теперь рассмотрим, как бесплатно разместить ваш веб-сайт Python на Heroku. Обратите внимание, что это основано на Python версии 3.7 и Django версии 2.1.7.
Настроить Git и Heroku
Для начала загрузите Git из сайт git-scm. Здесь объясняются различные команды и хитрости для установки Git на всех операционных системах.
После установки Git вам также необходимо настроить учетную запись в Heroku на Страница регистрации на Heroku если у вас его еще нет.
Затем загрузите и установите Heroku CLI с веб-сайта Heroku. Интерфейс командной строки Heroku позволяет вам связываться с вашим репозиторием каждый раз, когда вам нужно зафиксировать изменения в вашем приложении.
Если вы еще не знакомы с командами Git, вам следует взглянуть на наши введение в контроль версий с помощью Git.
Настроить проект Django
Если у вас нет настроенного проекта Django и вы хотите попробовать его с помощью этого руководства, откройте командную строку и создать виртуальную среду если у вас его еще нет. Когда виртуальная среда будет готова, используйте эту команду для установки фреймворка Django:
Мы исследуем лучшие способы создания виртуальных сред Python и управления ими.
pip install django == 2.1.7
После установки Django в виртуальной среде выполните следующую команду, чтобы запустить новый проект Django:
django-admin.py startproject имя_проекта
Затем создайте новое приложение Python. Для этого перейдите в корневую папку вашего проекта на CMD и запустите:
python manage.py startapp имя_приложения
Не забудьте заменить название проекта и Название приложения с вашими предпочтительными именами.
Вам нужен Gunicorn модуль для этого, поэтому вам также следует запустить pip install gunicorn. Затем добавьте Gunicorn в список установленных приложений в settings.py, как показано ниже:
Это всего лишь поверхностное введение в создание приложения Django. Однако независимо от того, готово ли ваше приложение или вы его только создаете, убедитесь, что ваш запуск python manage.py мигрировать для создания вашей базы данных.
Теперь у вас должно быть приложение Python, работающее в вашей среде Django. Теперь перейдем к нашей основной цели.
Развертывание вашего приложения на Heroku
Для успешного развертывания вашего приложения в Heroku вам необходимо настроить requirements.txt файл. Чтобы настроить его, запустите в CMD следующее:
замораживание пипса> requirements.txt
Эта строка создает .текст файл, содержащий все пакеты, используемые для обслуживания вашего проекта. Heroku просматривает этот файл во время развертывания и автоматически устанавливает эти пакеты.
Еще один важный файл, который вам необходимо указать, - это Procfile. Это сообщает Heroku о командах, которые следует запускать при инициализации приложения. Однако вы должны создать этот файл, явно создав новый текстовый файл с именем Procfile в корне вашего проекта. Убедитесь, что у этого файла нет расширения; в противном случае это не сработает.
Чтобы удалить расширение файла из Procfile в Windows, откройте папку в проводнике, нажмите Вид на верхней панели инструментов и проверьте Расширения имени файла коробка. Затем вы увидите расширения для всех файлов, включая .текст расширение для Procfile. Щелкните правой кнопкой мыши на Procfile и выберите Переименовать, затем просто удалите .текст расширение и нажмите Войти.
Затем откройте Procfile и добавьте следующую строку, заменив название проекта с именем, которое относится к вашему проекту:
веб: gunicorn имя_проекта.wsgi
При желании вы также можете создать runtime.txt файл. Откройте файл и укажите версию Python следующим образом:
питон-3.7.6
Вот как вы сообщаете Heroku версию Python, на которой работает ваше приложение. Если вы не укажете этот файл, Heroku по умолчанию использует последнюю версию Python.
Затем в командной строке войдите в свою учетную запись Heroku, выполнив эту команду:
героку логин
Эта команда открывает ваш браузер по умолчанию на странице входа в Heroku, где вы можете указать свои учетные данные.
Чтобы создать приложение на Heroku, введите следующую строку:
heroku создать ademosapp2
Заменять ademosapp2 с вашим предпочтительным названием приложения. Если выбранное вами имя приложения уже используется, вы увидите сообщение с предложением выбрать новое имя.
На странице входа щелкните логотип Heroku, чтобы войти в панель управления Heroku. Теперь вы должны увидеть только что созданное приложение.
Затем откройте нужный текстовый редактор в месте расположения вашего проекта и перейдите в папку своего проекта. settings.py. в settings.py файл, измените Разрешенный хост к [*]это делает ваше приложение доступным для любого глобального хоста.
Теперь войдите в свою панель управления Heroku и щелкните только что созданное приложение, а затем нажмите настройки. В настройках прокрутите вниз и нажмите Добавить buildpack. Затем выберите Python в качестве пакета сборки и нажмите Сохранить изменения.
Затем вернитесь в свой CMD и запустите следующий код, чтобы установить Heroku в свой проект:
pip установить django-heroku
Теперь добавьте недавно установленный пакет в requirements.txt файл, запустив:
замораживание пипса> requirements.txt
Затем откройте свой проект settings.py файл и введите:
импортировать django_heroku
Кроме того, в последней строке settings.py, активировать джанго-героку добавляя:
django_heroku.settings (местные жители ())
# убедитесь, что вы закомментировали эту строку после развертывания
Как только это будет сделано, запустите удаленный репозиторий, набрав в командной строке следующее:
Heroku init
Затем создайте репозиторий приложений Heroku, запустив:
heroku git: remote -a ademosapp2 # заменить ademosapp2 на имя вашего приложения
Чтобы проверить файлы, которые необходимо зафиксировать, запустите:
git статус
Затем введите следующую команду, чтобы добавить все изменения в ваш репозиторий:
git add --all
После добавления изменений зафиксируйте их в Heroku, выполнив команду:
git commit -m "начальная фиксация"
Обратите внимание, что "начальная фиксация" можете использовать любое имя, какое захотите.
Далее следует отключить собирать статический используя следующее:
Конфигурация heroku: установите DISABLE_COLLECTSTATIC = 1
В противном случае вы можете столкнуться с проблемами в процессе развертывания.
Чтобы наконец отправить файлы в репозиторий Heroku, используйте команду:
git push heroku мастер
Это отправит все ваши файлы в Heroku и сделает приложение доступным из любого места. Чтобы увидеть свое недавно развернутое приложение, перейдите по ссылке https://app_name.herokuapp.com в вашем браузере, заменив Название приложения с именем вашего приложения.
Может ли Heroku разместить приложение, которое не работает на Python?
На Heroku можно разместить множество сборок приложений; те же процессы Git, которые мы здесь рассмотрели, работают и для других языков помимо Python. Вам нужно только внести небольшие изменения, например сбросить ваш пакет сборки.
Хотя Heroku предлагает вам бесплатный хостинг, все мы знаем, что бесплатный контент имеет некоторые ограничения. Однако, если вы не ожидаете, что ваш сайт будет получать много трафика, бесплатный хостинг Heroku может быть хорошим вариантом.
Хотите научиться программированию, но не знаете, с чего начать? Эти проекты и руководства по программированию для начинающих начнут вас.
- Программирование
- Веб хостинг
- Программирование
- Python
Идову увлечен интеллектуальными технологиями и производительностью. В свободное время он играет с кодированием и переключается на шахматную доску, когда ему скучно, но он также любит время от времени отвлекаться от рутины. Его страсть показывать людям современные технологии побуждает его писать больше.
Подписывайтесь на нашу новостную рассылку
Подпишитесь на нашу рассылку, чтобы получать технические советы, обзоры, бесплатные электронные книги и эксклюзивные предложения!
Еще один шаг…!
Пожалуйста, подтвердите свой адрес электронной почты в электронном письме, которое мы вам только что отправили.