PythonAnyWhere 部署 Django 项目

PythonAnywhere 介绍

维基百科:
PythonAnywhere is an online Integrated Development Environment (IDE) and Web hosting service based on the Python programming language. ​

PythonAnyWhere 是一个提供项目云端托管,运行,在线编码的网站。

准备 django 版本:

  • Python2.7
  • Django1.9
  • SemanticUI
  • Xadmin

第一步:注册账号

在 PythonAnyWhere 注册一个账号,申请的是免费空间,所以注册的用户名就是这个网站的域名,username.pythonanywhere.com 就是我们的域名,用户名可以起得简单一点。

第二步:上传代码到 PythonAnyWhere

假定项目已 publish 至 github 上,在 Consoles 下,打开一个 consoles ,会出现一个命令行终端,将 github 上的项目 clone 至 PythonAnyWhere , 输入以下命令: git clone https://github.com/myusername/myproject.git ,等待项目上传成功。

第三步:创建 virtuallenv 及安装所需库

命令行里输入如下命令:mkvirtualenv --python=/usr/bin/python2.7 mysite-virtualenv ,激活虚拟环境:source myvenv/bin/activate ,在虚拟环境里一一安装项目所需要的库,比如 django,pillow,xadmin 等,如果项目里有 requirements.txt 文件,那就直接在命令行输入:pip install -r requirements.txt

第四步:创建 Database

在 Database 中新建 mysql 数据库,默认生成数据库格式 username$database_name ,有个美元符,再创建数据库密码,之后 django 配置会用到。

第五步:创建 Web app 和配置 WSGI 文件

Web 卡片项,选择手动配置,填完相关信息后容器 app 自动创建。看到 Code 选项,填入相关信息:

Source code:项目文件目录
Working directory:/home/username/
WSGI configuration file:/var/www/username_pythonanywhere_com_wsgi.py

打开 WSGI configuration file 这个文件,填入如下信息:

import os
import sys
path = '/home/myusername/mysite' #(含有manage.py的上一级目录)
if path not in sys.path:
    sys.path.append(path)
os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'
###### then, for Django >=1.5:
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()
###### or, for older Django <=1.4
#import django.core.handlers.wsgi
#application = django.core.handlers.wsgi.WSGIHandler()

wsgi 文件的配置完成。

第六步:配置数据库

进入项目中寻找 settings.py 文件,配置数据库:

DATABASES = {
        'default': {
              'ENGINE': 'django.db.backends.mysql',
              'NAME': 'username$database_name',
              'USER': 'username',
              'PASSWORD': '数据库密码',
              'HOST': 'username.mysql.pythonanywhere-services.com',
                   }
            }
ALLOWED_HOSTS = ['username.pythonanywhere.com']

第七步:创建表和后台管理账号

在 consoles 中,激活虚拟环境创建表和超级用户,命令如下:

python manage.py migrate(创建表)
python manage.py createsuperuser(创建超级用户)
python manage.py collectstatic(收集静态文件js、css、图片)

第八步:配置 Virtualenv

Virtualenv 选项,键入之前创建的虚拟环境目录:

/home/username/my-virtualenv

Static files 选项,大多数 Django 项目都要用到 static 以及 media,像下面这样键入静态目录:

URL         Directory   
/static/    /home/username/my_drectory/my_project/static     
/media/     /home/username/my_drectory/my_project/media  

第九步:展示成果

在 Web 项 Reload 网站,如果上面的配置都正确的话,项目即可部署成功。

​参考资料:https://help.pythonanywhere.com/pages/DeployExistingDjangoProject

你可能感兴趣的:(PythonAnyWhere 部署 Django 项目)