📜  如何在 PythonAnywhere 上部署 Django 项目?(1)

📅  最后修改于: 2023-12-03 15:24:20.467000             🧑  作者: Mango

如何在 PythonAnywhere 上部署 Django 项目?

PythonAnywhere 是一个基于云的 Python 开发平台,它提供了一个完整的环境来运行和部署 Django 项目。

以下是在 PythonAnywhere 上部署 Django 项目的步骤:

1. 注册一个 PythonAnywhere 账号

如果你还没有 PythonAnywhere 账号,可以免费注册一个账号。

2. 创建一个 PythonAnywhere Web 应用程序

创建一个 PythonAnywhere Web 应用程序,选择你喜欢的 Web 框架。

3. 创建一个虚拟环境

在 PythonAnywhere 上创建一个虚拟环境以便你的 Django 项目可以运行在独立的环境里。创建虚拟环境的命令如下:

mkvirtualenv mysite --python=/usr/bin/python3.8

以上命令将创建一个名称为 mysite 的虚拟环境,并使用 Python3.8 解释器。

4. 安装 Django 和相关依赖

在虚拟环境中安装 Django 和相关依赖。可以使用 pip 工具来安装其它 python 包。

pip install django
pip install mysqlclient
pip install pillow
5. 创建 Django 项目

在虚拟环境中创建一个 Django 项目并进行配置:

django-admin startproject mysite
cd mysite

配置数据库:

vi mysite/settings.py

在文件末尾添加以下内容:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': '<database-name>',
        'USER': '<database-user>',
        'PASSWORD': '<database-password>',
        'HOST': '<database-host>',
        'PORT': '<database-port>',
    }
}
6. 修改 WSGI 文件

打开 PythonAnywhere Web 应用程序的 WSGI 文件并修改。

vi /var/www/<username>_pythonanywhere_com_wsgi.py

在文件末尾添加下面的内容:

import os
import sys

path = '/home/<username>/<project-root>'
if path not in sys.path:
  sys.path.append(path)

os.environ['DJANGO_SETTINGS_MODULE'] = '<project-name>.settings'

from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()
7. 迁移数据库

在虚拟环境中迁移数据库。

python manage.py makemigrations
python manage.py migrate
8. 创建超级用户

在虚拟环境中创建超级用户以便可以登录 Django 管理后台。

python manage.py createsuperuser
9. 上传静态文件

在针对生产的部署过程中,需要上传项目的静态文件到 PythonAnywhere Web 应用程序的静态文件目录中。

python manage.py collectstatic
10. 启动 Web 应用程序

启动 PythonAnywhere Web 应用程序,在浏览器中输入你的 Web 应用程序地址,查看 Django 是否成功运行。

终于成功了!现在你的 Django 项目已经在 PythonAnywhere 上部署完成啦!