Поиск по сайту:

Как установить Django Web Application Framework на Debian 10


Это руководство существует для этих версий ОС

  • Debian 11 (Bullseye)
  • Debian 10 (Buster)

На этой странице

  1. Предпосылки
  2. Начало работы
  3. Установить Джанго
  4. Создание проекта Django
  5. Создание суперпользователя для Django
  6. Запустить сервер Django
  7. Доступ к приложению Django
  8. Установите соединитель базы данных MariaDB.
  9. Настройка Django для подключения к MariaDB
  10. Проверка соединения с MariaDB
  11. Заключение

Django — это среда веб-приложений с открытым исходным кодом, которая помогает разрабатывать динамические веб-сайты и приложения. Это безопасно, быстро и стабильно, что позволяет создавать сложные веб-сайты с меньшим количеством кода. Есть несколько способов установить Django в вашей системе. Вы можете установить его с помощью репозитория Debian, с помощью PIP или из репозитория Git. Вы можете выбрать любой метод в зависимости от ваших потребностей. Django позволяет создавать проекты в виртуальных средах Python. Таким образом, вы можете создать несколько сред Django в одной системе.

В этом руководстве мы узнаем, как установить веб-фреймворк Django с PIP на Debian 10. Мы также узнаем, как создать приложение Django и подключить его к базе данных.

Предпосылки

  • Сервер под управлением Debian 10.
  • На вашем сервере настроен пароль root.

Начиная

Перед запуском обновите вашу систему до последней версии. Вы можете сделать это, выполнив следующую команду:

apt-get update -y
apt-get upgrade -y

Как только ваша система будет обновлена, перезапустите ее, чтобы изменения вступили в силу.

Установить Джанго

Django написан на языке Python. Поэтому вам нужно будет установить зависимости Python в вашей системе, чтобы установить Django. Вы можете установить их все с помощью следующей команды:

apt-get install python3 python3-pip tree -y

После установки всех пакетов вы можете проверить установленную версию PIP с помощью следующей команды:

pip3 -V

Вы должны получить следующий результат:

pip 18.1 from /usr/lib/python3/dist-packages/pip (python 3.7)

Теперь вы можете приступить к установке Django с помощью команды PIP, как показано ниже:

pip3 install Django

После завершения установки проверьте версию Django с помощью следующей команды:

django-admin --version

Вы должны увидеть следующий вывод:

3.0.2

На данный момент Django установлен на вашем сервере. Теперь вы можете перейти к следующему шагу.

Создать проект Джанго

Теперь давайте начнем создавать пример проекта Django. Сначала измените каталог на /opt, где вы хотите создать проект Django:

cd /opt

Затем выполните следующую команду, чтобы создать новый проект Django с именем Dproject:

django-admin startproject Dproject

После создания проекта вы можете увидеть структуру каталогов этого проекта с помощью следующей команды:

tree

Вы должны получить следующий результат:

.
??? Dproject
    ??? Dproject
    ?   ??? asgi.py
    ?   ??? __init__.py
    ?   ??? settings.py
    ?   ??? urls.py
    ?   ??? wsgi.py
    ??? manage.py

Затем измените каталог на Dproject и перенесите ожидающие изменения с помощью следующей команды:

cd Dproject
python3 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 auth.0010_alter_group_name_max_length... OK
  Applying auth.0011_update_proxy_permissions... OK
  Applying sessions.0001_initial... OK

На данный момент новый проект Django был создан внутри каталога /opt.

Создайте суперпользователя для Django

Затем вам нужно будет создать суперпользователя для Django, чтобы получить доступ к интерфейсу администратора Django. Вы можете создать его с помощью следующей команды:

python3 manage.py createsuperuser

Укажите желаемое имя пользователя, адрес электронной почты и пароль, как показано ниже:

Username (leave blank to use 'root'): admin
Email address: 
Password: 
Password (again): 
Superuser created successfully.

Запустите сервер Джанго

По умолчанию Django недоступен из удаленной системы. Поэтому вам нужно будет настроить Django и определить IP-адрес вашего сервера. Вы можете сделать это, отредактировав файл settings.py.

nano /opt/Dproject/Dproject/settings.py

Измените следующую строку:

ALLOWED_HOSTS = ['your-server-ip']

Сохраните и закройте файл, когда закончите. Затем запустите сервер Django с помощью следующей команды:

cd /opt/Django
python3 manage.py runserver 0.0.0.0:8000

После успешного запуска сервера вы должны получить следующий вывод:

Watching for file changes with StatReloader
Performing system checks...

System check identified no issues (0 silenced).
January 07, 2020 - 13:01:23
Django version 3.0.2, using settings 'Dproject.settings'
Starting development server at http://0.0.0.0:8000/
Quit the server with CONTROL-C.

Доступ к приложению Django

На этом этапе приложение Django запущено и прослушивает порт 8000. Чтобы получить к нему доступ, откройте веб-браузер и введите URL-адрес http://your-server-ip:8000. Вы должны увидеть приложение Django на следующем экране:

Чтобы получить доступ к интерфейсу администратора Django, откройте веб-браузер и введите URL-адрес http://your-server-ip:8000/admin. Вы будете перенаправлены на страницу входа в Django:

Введите имя пользователя и пароль администратора Django и нажмите кнопку «Войти». Вы должны увидеть интерфейс администратора Django на следующем экране:

Установите коннектор базы данных MariaDB

Затем вам нужно будет установить коннектор базы данных MariaDB и другие пакеты разработки, чтобы подключить Django к базе данных MariaDB. Вы можете установить их все, используя следующую команду:

apt-get install mariadb-server python3-dev libmariadb-dev libmariadbclient-dev -y

После установки всех пакетов вы можете установить библиотеку mysqlclient с помощью команды PIP, как показано ниже:

pip3 install mysqlclient

После установки войдите в оболочку MariaDB с помощью следующей команды:

mysql

Затем установите пароль root для MariaDB с помощью следующей команды.

MariaDB [(none)]> SET PASSWORD FOR 'root'@'localhost' = PASSWORD("newpassword");

Затем создайте базу данных для Django с помощью следующей команды:

MariaDB [(none)]> create database testdb;

Вы можете увидеть базу данных, созданную выше, с помощью следующей команды:

MariaDB [(none)]> show databases;

Вы должны получить следующий результат:

+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| testdb             |
+--------------------+

Затем сбросьте привилегии и выйдите из оболочки MariaDB с помощью следующей команды:

MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;

Настройте Django для подключения к MariaDB

Далее вам нужно будет определить учетные данные базы данных MariaDB в Django. Вы можете определить это, отредактировав файл settings.py:

nano /opt/Dproject/Dproject/settings.py

Найдите следующие строки:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    }
}

И замените их следующими строками:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'OPTIONS': {
        'read_default_file': '/etc/mysql/mariadb.conf.d/50-client.cnf',
        },
    }
}

Сохраните и закройте файл, когда закончите. Затем отредактируйте файл учетных данных клиента MariaDB, как показано ниже:

nano /etc/mysql/mariadb.conf.d/50-client.cnf

Определите учетные данные базы данных MariaDB, как показано ниже:

[client]
database = testdb 
user = root   
password = newpassword
default-character-set = utf8

Сохраните и закройте файл, затем перезапустите службу MariaDB, чтобы изменения вступили в силу:

systemctl restart mariadb

Затем измените каталог на проект Django и перенесите новые изменения с помощью следующей команды:

cd /opt/Dproject
python3 manage.py migrate

После успешного завершения миграции вы можете перейти к следующему шагу.

Протестируйте соединение с MariaDB

На данный момент Django настроен для подключения к базе данных MariaDB. Пришло время протестировать его.

Для этого запустите сервер Django с помощью следующей команды:

cd /opt/Django
python3 manage.py runserver 0.0.0.0:8000

После успешного запуска сервера Django вы должны получить следующий вывод:

Watching for file changes with StatReloader
Performing system checks...

System check identified no issues (0 silenced).
January 07, 2020 - 13:30:49
Django version 3.0.2, using settings 'Dproject.settings'
Starting development server at http://0.0.0.0:8000/
Quit the server with CONTROL-C.

Теперь вы можете получить доступ к своему приложению Django, используя URL-адрес http://your-server-ip:8000. Вы должны увидеть свое приложение Django на следующем экране:

После тестирования вы можете остановить сервер Django любого типа, нажав CTRL + C в своем терминале.

Заключение

Поздравляем! вы успешно установили Django и подключили его к базе данных MariaDB на сервере Debian 10. Теперь вы можете приступить к разработке своего веб-приложения и применить миграции в своем приложении Django. Не стесняйтесь спрашивать меня, если у вас есть какие-либо вопросы.