docker compose环境搭建

概述

Docker Compose提供一个简单的基于YAML配置语言。用于描写叙述和组装多容器的分布式应用。 使用docker定义和执行复杂的应用。使用compose,能够在一个文件中,定义多容器的应用。

仅仅须要三步就可以完毕一个应用的创建。

  • Dockerfile定义app的执行环境
  • docker-compose.yml定义组成app的services
  • run
    docker-compose up

环境搭建

系统:ubuntu 14.04

curl -L https://github.com/docker/compose/releases/download/1.1.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

django应用測试

Dockerfile

FROM python:2.7
ENV PYTHONUNBUFFERED 1
RUN mkdir /code
WORKDIR /code
ADD requirements.txt /code/
RUN pip install -r requirements.txt
ADD . /code/
requirements.txt
<span style="font-size:10px;">Django
psycopg2</span>

服务配置docker-compose.yml
<span style="font-size:12px;">db:
  image: postgres
web:
  build: .
  command: python manage.py runserver 0.0.0.0:8887
  volumes:
    - .:/code
  ports:
    - "8887:8887"
  links:
    - db
构建project
docker-compose run web django-admin.py startproject composedjango .

连接数据库。改动composedjango/settings.py
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': 'postgres',
        'USER': 'postgres',
        'HOST': 'db',
        'PORT': 5432,
    }
}
执行
$ docker-compose run web python manage.py syncdb

启动应用
docker-compose up

至此,通过docker compose就实现了一个简单的Django应用,能够通过网页即可訪问。ip:8887







posted @ 2017-05-12 09:54  yangykaifa  阅读(461)  评论(0编辑  收藏  举报