概述
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
构建工程
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
时间: 2024-10-25 02:57:22