如何使用docker部署django项目--项目文件挂载数据卷

如何使用Docker部署django项目?
在公司我写了一个用于监控爬虫的django项目,为了部署和测试方便,我采用了使用docker来部署,
我在使用docker部署稍大一点的项目时会先创建一个基础镜像。
如: scrapy爬虫会先建立一个scrapy镜像, django先创建一个django镜像

先创建Django的基础镜像

创建一个文件夹 test1(随意) 里面放两个文件 Dockerfile , requirements.txt 两个文件
Dockerfile

FROM python:3.5  # python环境
# 将当前目录内的文件添加到 docker /usr/src/app
ADD . /usr/src/app
# 创建时安装requirements.txt 包
RUN pip install -r /usr/src/app/requirements.txt

requirements.txt # 自己业务需要的包

Django==2.1.7
PyMySQL==0.9.3
redis
......

然后在test1 目录下执行
docker build -t django:v1.0 .
django 的基础镜像完成

创建web项目镜像

项目的基本结构
如何使用docker部署django项目--项目文件挂载数据卷_第1张图片
Dockerfile # 我这里写最最简化的方式

FROM django:v1.0
ENV RUN_MODE=DEPLOY
ADD . /myweb
WORKDIR /myweb
CMD python manage.py runserver 0.0.0.0:8000 

生成镜像 在spider_monitor 目录下
docker build -t myweb:v1.0 .

挂载数据卷的形式开启容器

还是在spider_monitor 目录下, 也可以是项目的绝对路径
docker run -d --name web_test -v $pwd:/myweb -p 8080:8000 myweb:v1.0
这样就可以 通过对宿主机中项目的更改, 实现同步到容器
可以访问http://127.0.0.1:8080 看是否成功?

你可能感兴趣的:(docker,python,docker,django,部署)