django的部署以及和docker 的集成

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了django的部署以及和docker 的集成相关的知识,希望对你有一定的参考价值。

开发环境:ubuntu14  python3

首先安装docker,docker-compose  如果不懂,详见 DOCKER官网

接下来安装django   

通过pip安装 sudo pip install django=1.11   这里可以指定要安装的版本

如果没有安装pip 请先预安装pip    sudo apt-get install pip 

先创建一个文件夹 mkdir first_django

查看文件  ls

进入文件夹 cd first_django

创建工程  django-admin.py startproject   mysite   注意:此处是工程

创建应用 python manage.py startapp app  

接下来的操作可以参考这篇文章   https://www.cnblogs.com/fnng/p/3740274.html

就是在ubuntu当中开发 django 

当我们在ubuntu当中开发完成的时候,想要发布生成docker image 的时候

需要做的几个操作

第一步  根目录下创建requirements.txt 文件 可以手动添加内容,也可以通过 sudo freeze >requirements.txt 命令添加

第二步  创建dockerfile文件 

 

FROM python:3
ENV PYTHONUNBUFFERED 1
RUN mkdir /code
WORKDIR /code
ADD requirements/prod.txt /code/
RUN pip install -r prod.txt -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
ADD . /code/

第三步 创建docker-compose.yml文件

version: ‘2‘
services:
web:
restart: always
# 指定镜像创建源目录,在其根目录中必须包含Dockerfile
build: /home/ubuntu/first_django/
# 多行命令
command: bash -c " python manage.py runserver 0.0.0.0:8000 "
ports:
- "8000:8000"
# 指定你要挂载的容器卷,路径可任意
volumes:
- /home/ubuntu/first_django/:/code
# 指定要进行相互间通信的容器名
ports:
- "8000:8000"
nginx:
restart: always
build: ./nginx/
ports:
- "80:80"
# nginx容器挂载在与web容器相同的容器卷上
volumes_from:
- web
links:
- web:web

 

第四步  在根目录下运行docker-compose up 

可以看到项目己经启动,相应的镜像也己经创建完毕。

 

以上是关于django的部署以及和docker 的集成的主要内容,如果未能解决你的问题,请参考以下文章

influxdb部署以及集成到jenkins

docker、nginx、django 以及如何提供静态文件

开源web框架django知识总结(十四)

开源web框架django知识总结(十四)

Seata集成与部署

{Django基础八之cookie和session}一 会话跟踪 二 cookie 三 django中操作cookie 四 session 五 dja