三年之后,再玩一下 Django…
虚拟环境的搭建
Pipenv 是目前推荐的虚拟环境(之前 virtualenv 和 pyenv)。使用虚拟环境可以方便隔离不同开发版本,有利于部署和控制。
将终端切换到对应目录,使用命令:
pipenv install
创建环境成功后,目录下应该会出现 Pipfile 和 Pipfile.lock 两个文件。
接下来激活创建的虚拟环境:
pipenv shell
在终端命令提示符前面出现一个以目录名的提示,就代表是虚拟环境。如果要退出创建的虚拟环境,只需要输入 exit
。
接下来安装 Django
pipenv install django==3.1.2
使用 django-admin 创建一个新的项目。
django-admin startproject erp_sys
运行项目,可以使用
python manage.py runserver
在浏览器中访问 localhost:8000 应该可以看到页面。
调整一下项目的语言和时区,在 settings.py 中修改下面两项:
LANGUAGE_CODE = 'zh-hans'
TIME_ZONE = 'Asia/Shanghai'
Docker 环境
为了进一步简化部署(pipenv 其实已经简化版本部署的难度),我们考虑在 Docker 容器中运行服务,将各种外部依赖进一步包含进来,而不仅仅只是Python的包。
为了使用Docker,首先要安装Docker。(安装过程略,只是安装一个软件,顶多再配置环境变量)
之后编写 Dockerfile(注意大小,开头是 D) 和 docker-compose.yml
Dockerfile 文件:
# 拉取镜像
FROM python:3.8.0
# 设置环境变量
ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1
# 工作目录
WORKDIR /code
# 安装依赖
COPY Pipfile Pipfile.lock /code/
RUN pip install pipenv && pipenv install --system
# 复制项目到工作目录
COPY . /code/
docker-compose.yml:
version: '3'
services:
web:
build