如何在 Debian 10 上安装 Django Web 应用程序框架
本教程适用于这些操作系统版本
- Debian 11(Bullseye)
- Debian 10(Buster)
在此页
- 先决条件
- 开始
- 安装 Django
- 创建一个 Django 项目
- 为 Django 创建一个超级用户
- 启动 Django 服务器
- 访问 Django 应用程序
- 安装 MariaDB 数据库连接器
- 为 MariaDB 连接配置 Django
- 测试 MariaDB 连接
- 结论
Django 是一个开源 Web 应用程序框架,可帮助您开发动态网站和应用程序。它安全、快速且稳定,可让您以更少的代码创建复杂的网站。有几种方法可以在您的系统上安装 Django。您可以使用 Debian 存储库、使用 PIP 或从 Git 存储库安装它。您可以根据需要选择任何方法。 Django 允许您在 Python 虚拟环境中创建项目。这样您就可以在单个系统中创建多个 Django 环境。
在本教程中,我们将学习如何在 Debian 10 上使用 PIP 安装 Django Web 框架。我们还将学习如何创建 Django 应用程序并将其与数据库连接。
先决条件
- 运行 Debian 10 的服务器。
- 在您的服务器上配置了根密码。
入门
在开始之前,请使用最新版本更新您的系统。您可以通过运行以下命令来完成此操作:
apt-get update -y
apt-get upgrade -y
更新系统后,重新启动它以应用更改。
安装 Django
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)
现在,您可以继续使用 PIP 命令安装 Django,如下所示:
pip3 install Django
安装完成后,使用以下命令检查 Django 版本:
django-admin --version
您应该看到以下输出:
3.0.2
至此,Django 已经安装到你的服务器上了。您现在可以继续下一步。
创建 Django 项目
现在让我们开始创建一个示例 Django 项目。首先,将目录更改为要创建 Django 项目的 /opt 目录:
cd /opt
接下来,运行以下命令创建一个名为 Dproject 的新 Django 项目:
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。所以你需要配置 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。要访问它,请打开 Web 浏览器并输入 URL http://your-server-ip:8000。您应该会在以下屏幕中看到 Django 应用程序:

要访问 Django 管理界面,请打开您的 Web 浏览器并输入 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
安装所有包后,您可以使用 PIP 命令安装 mysqlclient 库,如下所示:
pip3 install mysqlclient
安装后,使用以下命令登录到 MariaDB shell:
mysql
接下来,使用以下命令设置 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 shell:
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;
为 MariaDB 连接配置 Django
接下来,您需要在 Django 中定义 MariaDB 数据库凭据。您可以通过编辑文件 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.
您现在可以使用 URL http://your-server-ip:8000 访问您的 Django 应用程序。您应该会在以下屏幕中看到您的 Django 应用程序:

测试后,您可以通过在终端中按 CTRL + C 来停止任何类型的 Django 服务器。
结论
恭喜!您已成功安装 Django 并将其与 Debian 10 服务器上的 MariaDB 数据库连接。您现在可以开始开发 Web 应用程序并在 Django 应用程序中应用迁移。如果您有任何问题,请随时问我。