Как развернуть приложение Django на рендере
![](/static/storage/326127615039935685791082898639851752414.png)
Render — это платформа хостинга, которая помогает вам легко развертывать ваши приложения. Независимо от того, создаете ли вы веб-серверы, статические веб-сайты, задания cron или контейнеры, этот инструмент поможет вам упростить процесс.
Если вы являетесь разработчиком в начале своей карьеры и вам нужно составить привлекательное резюме, резюме или портфолио, Render предлагает бесплатный уровень, который предлагает 1 ГБ емкости для хранения.
В этом руководстве мы рассмотрим, как развернуть приложение Django на платформе Render. Проект, который мы создаем, поможет вам эффективно продемонстрировать свои навыки кодирования и проекты, изучая развертывание.
Предпосылки
Чтобы следовать этому руководству, вам нужно настроить несколько вещей:
- Аккаунт на платформе Render
- Git-аккаунт
- PostgreSQL установлен
- Аккаунт на GitHub
Теперь давайте узнаем, как бесплатно развернуть веб-сервер Django. 🚀
Как настроить базу данных PostgreSQL
Сначала перейдите на панель инструментов Render и создайте базу данных PostgreSQL. Нажмите кнопку «Создать +», наведите указатель мыши на PostgreSQL и щелкните ее.
![Render Dashboard — создание базы данных PostgreSQL](/static/storage/190124020980778764530175369441925441428.png)
Затем определите параметры базы данных, дав имя экземпляру базы данных. Вы можете либо позволить Render определить имя для базы данных и пользователя, либо определить его самостоятельно.
Это руководство предназначено для начинающих, мы определим только имя экземпляра.
![Создание новой базы данных PostgreSQL](/static/storage/271740108950866867058866684686774670233.png)
Выберите уровень бесплатного пользования и нажмите «Создать базу данных».
Примечание. Срок действия каждой бесплатной базы данных, созданной на Render, истекает через 90 дней после создания. Так что просто примите это к сведению и обновите, если это важный проект. Вы можете увидеть цены здесь.
![Создание новой базы данных PostgreSQL](/static/storage/77850082537480946771186498732239518803.png)
Когда статус вашей базы данных показывает Доступно, это означает, что база данных успешно создана и готова к использованию.
![Проверка состояния только что созданной БД PostgreSQL](/static/storage/135407843642352695353989223625708487306.png)
Прокрутите эту страницу вниз, чтобы увидеть настройки вашей базы данных. Вы будете использовать эти настройки для настройки приложения Django.
![Информация о базе данных](/static/storage/316877589925838319389412218918086032997.png)
Затем контроль доступа позволяет вам выбрать IP-адрес для доступа к вашей базе данных.
После того, как ваша база данных создана, она поставляется с предопределенным маршрутом управления доступом, который позволяет вам получить к ней доступ из любой точки мира, используя один (1) IP-адрес. Хотя вы не можете установить другой маршрут, так как вы используете бесплатный план Render.
![](/static/storage/127959210508075281332700144538520315311.png)
Вы можете изменить это или оставить по умолчанию.
Теперь, когда мы создали базу данных, давайте настроим ее в проекте Django.
Как подключить вашу базу данных
После того, как база данных настроена, вам необходимо подключить ее к вашему проекту Django в файле settings.py
.
Перейдите к своей кодовой базе и подключите ее.
Сначала установите dj-database-url
pip install dj-database-url
Установка пакета подключения к базе данных для проекта Django
Существуют разные способы подключения вашей базы данных к проекту вашего приложения. В этом руководстве используется внешний URL-адрес подключения.
Перейдите к настройкам вашей базы данных на Render и скопируйте URL-адрес внешней базы данных.
![Получение URL-адреса внешней DB](/static/storage/131238954880069573993499254878511796813.png)
Затем импортируйте dj-database-url в свой settings.py
и определите URL-адрес базы данных (из Render) в качестве вашей базы данных.
Примечание. Всегда разумно добавлять конфиденциальную информацию в файл .env из соображений безопасности.
import dj-database-url
import os
DATABASES = {
"default": dj_database_url.parse(os.environ.get("DATABASE_URL"))
}
Затем перенесите свои таблицы в новую базу данных, чтобы убедиться, что подключение прошло успешно.
Если вы не выполнили миграцию ни в один db.sqlite локально, убедитесь, что вы сначала выполнили миграцию, иначе вы не будете создавать таблицы при запуске python manage.py migrate
.
# To make migrations if this is your first time connecting to a database
python manage.py makemigrations
#To migrate tables set on your migrations folders
python manage.py migrate
Если подключение было успешным, и вы переносите все свои таблицы, вывод вашего терминала должен выглядеть следующим образом:
![Успешная миграция](/static/storage/271689866207461698670886975997725364119.png)
Теперь вы в одном шаге от развертывания вашего проекта Django! 🎉
Не забудьте отправить свою кодовую базу в репозиторий Git с значимыми коммитами.
Как создать веб-сервис
Это последний шаг к запуску вашего проекта.
Перейдите на панель инструментов Render. Нажмите «Создать +» и выберите «Веб-служба».
![Создание нового веб-сервиса](/static/storage/208144504591686713030877404823668036155.png)
Подключите свой GitHub, если вы еще этого не сделали. После подключения это должно выглядеть так:
![Подключение вашего Git к платформе рендеринга](/static/storage/307665248234637319054108721281357695268.png)
Найдите репозиторий, который вы хотите развернуть, и нажмите кнопку «Подключиться». Он должен работать безотказно.
Затем определите настройки вашего repo. Дайте вашему приложению имя и убедитесь, что вы подключаетесь к правильной ветке.
![Настройка веб-сервера Django](/static/storage/269129237275922856413570374195089672547.png)
Установите gunicorn и измените файл requirements.txt в вашем проекте Django. Выполнив заморозку pip > requirements.txt, вы можете обновить установленные пакеты в файле requirements.txt. Это автоматически изменяет список необходимых файлов вашего проекта.
Gunicorn — это легкий веб-сервер Python, который действует как шлюз между веб-приложением и Интернетом. Он предназначен для развертывания, поскольку эффективно управляет входящими веб-запросами.
Затем отправьте изменения в Git. Помните, что вы подключили Git к своему веб-сервису, поэтому Render отслеживает репозиторий и автоматически развертывает его при обнаружении любых изменений.
pip install gunicorn
pip freeze > requirements.txt # To update your requirements.txt file
Убедитесь, что вы добавили веб-службу рендеринга в ALLOWED_HOSTS в файле settings.py
.
Затем убедитесь, что вы установили правильный файл requirements.txt
, как показано на изображении ниже. Кроме того, убедитесь, что вы используете правильную среду выполнения Python и задайте настройки пушки вашего проекта на платформе Render.
![Создание веб-сервиса](/static/storage/234676361290921412916966749448329709668.png)
Вернитесь на панель Render Dashboard и щелкните развернутую веб-службу, чтобы просмотреть ссылку в реальном времени.
![Развернутый веб-сервис и база данных](/static/storage/216616651773116470789447885874057712610.png)
Вот и все! Вы развернули свое первое приложение Django на бесплатной платформе. Наслаждайтесь своим веб-сервером в течение следующих 90 дней.
Заключение
Подводя итог, можно сказать, что развертывание приложения/сервера Django или любого сервера на Render — это просто и эффективно.
Используя функции Render, такие как непрерывная интеграция и встроенный мониторинг, разработчики могут больше сосредоточиться на создании приложения и его функций, а не на инфраструктуре приложения и управлении им.