美文网首页
使用Docker编译Django

使用Docker编译Django

作者: 北纬30度是夏天 | 来源:发表于2017-02-21 20:36 被阅读0次

    介绍

    Docker是一种新兴的虚拟化方式,跟传统的虚拟化方式相比具有更高效的利用系统资源,更快速的启动时间,更轻松的迁移和部署的特点。

    前期准备

    -安装:Docker EngineDocker Compose
    -注册:Docker Hub

    Docker打包Django

    1. 新建一个文件夹,命名为mysite。

    2. 在文件夹中新建一个文件,Dockerfile。注意该文件没有后缀。在Dockerfile中写入以下内容。Dockerfile指定了运行环境为python2.7,需要的环境放在requirements.txt中。

    FROM python:2.7
    ENV PYTHONUNBUFFERED 1
    RUN mkdir /code
    WORKDIR /code
    ADD requirements.txt /code/
    RUN pip install -r requirements.txt
    ADD . /code/
    
    1. 新建requirements.txt,写入我们的依赖环境。Django是一个基于Python的开放源代码的Web应用框架。psycopg2,是Python语言的PostgreSQL数据库接口。
    Django
    psycopg2
    
    1. 新建一个文件名为docker-compose.yml,该文件描述了应用的组成并指定程序的端口号。
     version: '2'
     services:
       db:
         image: postgres
       web:
         build: .
         command: python manage.py runserver 0.0.0.0:8000
         volumes:
           - .:/code
         ports:
           - "8000:8000"
         depends_on:
           - db
    

    4.在docker中使用如下命令建立Django工程,执行后目录下会新增一个名为composeexample的文件夹。
    docker-compose run web django-admin.py startproject composeexample .

    1. 修改composeexample/settings.py文件中的DATABASES如下图所示。另外如果你是用的是Docker Toolbox ,可能需要在settings.py文件中的ALLOWED_HOSTS中加入'192.168.99.100'。
     DATABASES = {
         'default': {
             'ENGINE': 'django.db.backends.postgresql',
             'NAME': 'postgres',
             'USER': 'postgres',
             'HOST': 'db',
             'PORT': 5432,
         }
     }
    
    1. 运行。输入如下指令,然后访问192.168.99.100:8000,即可看到Django运行成功。
      docker-compose up
    运行成功截图

    相关文章

      网友评论

          本文标题:使用Docker编译Django

          本文链接:https://www.haomeiwen.com/subject/ifouwttx.html