
Django — это бесплатный и высокоуровневый веб-фреймворк Python с открытым исходным кодом, призванный помочь разработчикам создавать безопасные, масштабируемые и удобные в обслуживании веб-приложения.
Существуют разные способы установки Django, в зависимости от ваших потребностей. Его можно установить на всю систему или в виртуальную среду Python с помощью pip. Пакеты Django также включены в репозитории CentOS и могут быть установлены с помощью менеджера пакетов yum но они устарели.
В этом руководстве мы установим и настроим последнюю стабильную версию Django на машине CentOS 7 внутри виртуальной среды Python.
Основная цель виртуальных сред Python — создание изолированной среды для различных проектов Python. Таким образом, вы можете создать несколько различных сред Django на одном компьютере и устанавливать определённую версию модуля для каждого проекта, не беспокоясь о том, что это повлияет на другие установки Django. Если вы устанавливаете Django в глобальное окружение, вы можете установить только одну версию Django на свой компьютер.
Установка Django на CentOS 7
В следующих разделах приведены пошаговые инструкции по установке Django в виртуальной среде Python на CentOS 7.
1. Установка Python 3
Мы будем устанавливать Python 3.6 из репозиториев Software Collections (SCL).
CentOS 7 поставляется с Python 2.7.5, который является важнейшей частью базовой системы CentOS. SCL позволит вам установить более новые версии Python 3.x наряду с Python v2.7.5 по умолчанию, чтобы системные инструменты, такие как yum, продолжали работать корректно.
Начните с включения SCL, установив файл релиза CentOS SCL, который включен в репозиторий CentOS Extras:
sudo yum install centos-release-scl
После включения репозитория установите Python 3.6 с помощью следующей команды:
sudo yum install rh-python36
После установки Python 3.6 мы готовы создать виртуальную среду для нашего приложения Django.
2. Создание виртуальной среды
Начиная с версии Python 3.6, рекомендуемым способом создания виртуальной среды является использование модуля venv .
Перейдите в каталог, где вы хотите хранить виртуальные среды Python 3. Это может быть ваш домашний каталог или любой другой каталог, к которому у вашего пользователя есть права на чтение и запись.
Создайте новый каталог для вашего приложения Django и перейдите в него:
mkdir my_django_appcd my_django_app
Чтобы получить доступ к Python 3.6, вам необходимо запустить новый экземпляр оболочки с помощью инструмента scl :
scl enable rh-python36 bash
Выполните следующую команду для создания новой виртуальной среды:
python3 -m venv venv
Приведённая выше команда создаёт каталог venv , содержащий копию исполняемого файла Python, менеджера пакетов Pip , стандартной библиотеки Python и других вспомогательных файлов. Вы можете использовать любое имя для виртуального окружения.
Чтобы начать использовать эту виртуальную среду, вам необходимо активировать ее, запустив скрипт activate :
source venv/bin/activate
После активации каталог bin виртуального окружения будет добавлен в начало переменной $PATH . Кроме того, приглашение командной оболочки изменится и отобразит имя текущего виртуального окружения. В нашем случае это venv .
3. Установка Django
Теперь, когда виртуальная среда активирована, вы можете использовать менеджер пакетов Python pip для установки Django:
pip install django
В виртуальной среде вы можете использовать команду pip вместо pip3 и python вместо python3 .
Для проверки установки используйте следующую команду, которая выведет версию Django:
python -m django --version
На момент написания статьи последней официальной версией Django была 2.1.2.
2.1.2
Ваша версия Django может отличаться от показанной здесь.
4. Создание проекта Django
Чтобы создать новый проект Django с именем mydjangoapp , используйте утилиту командной строки django-admin :
django-admin startproject mydjangoapp
Приведенная выше команда создаст каталог mydjangoapp в вашем текущем каталоге.
tree mydjangoapp/
mydjangoapp/ |-- manage.py `-- mydjangoapp |-- __init__.py |-- settings.py |-- urls.py `-- wsgi.py
Внутри этого каталога вы найдете основной скрипт для управления проектами с именем manage.py и еще один каталог, включающий конфигурацию базы данных, а также настройки Django и приложения.
Давайте перенесем базу данных и создадим административного пользователя.
Начните с перехода в каталог mydjangoapp :
cd mydjangoapp
По умолчанию Django использует базу данных SQLite. Для производственных приложений можно использовать базы данных PostgreSQL , MariaDB , Oracle или MySQL .
Выполните следующую команду для миграции базы данных:
python manage.py migrate
Вывод будет выглядеть примерно так:
Operations to perform: Apply all migrations: admin, auth, contenttypes, sessions Running migrations: Applying contenttypes.0001_initial... OK Applying auth.0001_initial... OK Applying admin.0001_initial... OK Applying admin.0002_logentry_remove_auto_add... OK Applying admin.0003_logentry_add_action_flag_choices... OK Applying contenttypes.0002_remove_content_type_name... OK Applying auth.0002_alter_permission_name_max_length... OK Applying auth.0003_alter_user_email_max_length... OK Applying auth.0004_alter_user_username_opts... OK Applying auth.0005_alter_user_last_login_null... OK Applying auth.0006_require_contenttypes_0002... OK Applying auth.0007_alter_validators_add_error_messages... OK Applying auth.0008_alter_user_username_max_length... OK Applying auth.0009_alter_user_last_name_max_length... OK Applying sessions.0001_initial... OK
После переноса базы данных создайте административного пользователя, чтобы вы могли использовать интерфейс администратора Django:
python manage.py createsuperuser
Команда запросит у вас имя пользователя, адрес электронной почты и пароль для вашего административного пользователя.
Username (leave blank to use 'linuxize'): admin Email address: admin@linuxgazette.ru Password: Password (again): Superuser created successfully.
5. Тестирование сервера разработки
Запустите веб-сервер разработки с помощью скрипта manage.py , а затем параметра runserver :
python manage.py runserver
Вы увидите следующий вывод:
Performing system checks... System check identified no issues (0 silenced). October 20, 2018 - 11:16:28 Django version 2.1.2, using settings 'mydjangoapp.settings' Starting development server at http://127.0.0.1:8000/ Quit the server with CONTROL-C.
Если вы установили Django на виртуальную машину и хотите получить доступ к серверу разработки Django, то вам необходимо отредактировать файл settings.py и добавить IP-адрес сервера в список ALLOWED_HOSTS .
Откройте http://127.0.0.1:8000 в своем веб-браузере, и вы увидите целевую страницу Django по умолчанию:

Чтобы получить доступ к интерфейсу администратора Django, добавьте /admin/ в конец URL-адреса ( http://127.0.0.1:8000/admin/ ). Это перенаправит вас на экран входа в систему администратора:

Введите имя пользователя и пароль, и вы будете перенаправлены на страницу администратора Django:

Чтобы остановить сервер разработки, введите CTRL-C в терминале.
6. Деактивация виртуальной среды
Закончив работу, деактивируйте среду, введя команду deactivate , и вы вернетесь в обычную оболочку.
deactivate
Заключение
Вы узнали, как создать виртуальную среду Python и установить Django на компьютер с CentOS 7. Чтобы создать дополнительные среды разработки Django, повторите шаги, описанные в этом руководстве.
Если вы новичок в Django, посетите страницу документации Django и узнайте, как разработать свое первое приложение Django.
Если у вас возникли какие-либо проблемы, не стесняйтесь оставлять комментарии.
python centos Не используете CentOS 7?
Выберите другую ОС: дебиан 9 убунту 18.04
Связанные руководства