newcoderlife

Tomorrow Headline 后台部署
本文记录了“明日头条”项目Web后台的部署过程。配置系统环境推荐在 Linux Server 上部署,但本文会尽量...
扫描右侧二维码阅读全文
20
2018/10

Tomorrow Headline 后台部署

本文记录了“明日头条”项目Web后台的部署过程。

配置系统环境

推荐在 Linux Server 上部署,但本文会尽量做通用描述。

Python 环境

首先安装 Python 环境。目前官网最新是 3.7.1,这也是本文的推荐环境。最低版本为 3.6.0。使用 Python 3.6 的同学也不需要更新。

在 Ubuntu 上安装命令为:

sudo apt update
sudo apt upgrade -y
sudo apt autoremove -y
sudo apt install python3 python3-pip # 适用于 Ubuntu 18.04

然后是通过 pip 来安装相关的 Python 包。为了提高网络速度,这里先换源:

sudo python3 -m pip install --upgrade pip -i https://pypi.tuna.tsinghua.edu.cn/simple # 这里先把 pip 更新到最新版本
sudo pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple # 这里把 pip 设置位清华源

对于部分不起作用的用户可以在 /etc/pip.conf(在 Windows 环境则是 %appdata%/pip/pip.ini) 里输入如下文本:

[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
format = columns

Git

Windows 用户请到 Git 官网下载安装,Ubuntu 用户安装命令如下:

sudo apt install git -y
git config --global user.name <your-user-name>
git config --global user.email <your-email>

配置部署环境

下载代码

然后开始正式安装。首先,我们将后台代码从 Github 上面克隆下来:

cd <dir-you-want>
git clone https://github.com/tomorrow-headline/th-web-backend.git
cd th-web-backend

virtualenv

为了保护本地纯净的 Python 环境,我们这里使用 virtualenv 来隔离运行环境。对于 Windows 用户:

sudo pip install virtualenv
virtualenv .env
.env/Scripts/activate.bat # 如果你用的是 Powershell 请替换为 activate.ps1

对于 Linux 用户:

sudo pip install virtualenv
virtualenv .env --python=python3
source .env/bin/activate

安装 Python 包

在上一步的基础上,我们输入如下命令:

pip install -r requirements.txt

经过一段时间的等待,相关的 Python 包就安装好啦!

开始部署

建立数据库信息

对于使用 Django 开发的 Web 后台,无需关注数据库交互的细节实现,只需要通过 Django 提供的 ORM 系统操作 Python 数据结构即可。为了初始化数据库的相关信息,我们需要先建立与数据库结构对应的 Python 代码。在上文的基础上,输入如下命令:

./src/manage.py makemigrations
./src/manage.py makemigrations news

然后把这些代码应用到数据库里。默认的,我们的数据库是 sqlite。

./src/manage.py migrate

创建超级用户

这一步我们要创建用于调试的超级用户。简单的输入如下命令即可:

./src/manage.py createsuperuser

运行服务器

Django 项目的管理工具 manage.py 自带了一个调试服务器,可以用于本地调试。输入如下命令来启动它:

./src/manage.py runserver

然后访问 http://127.0.0.1:8000/ 就可以啦!

未完待续

Last modification:May 30th, 2019 at 07:47 pm
点击广告投喂博主 以获得更快的访问速度!

Leave a Comment