Docker Compose
Compose 是定义和运行多容器 Docker 应用程序的工具。使用 Compose,可以通过编辑 YAML 文件来配置应用程序的服务。它可以用来管理应用程序的生命周期,例如启动,停止以及重构服务。
1.定义应用程序的环境,即 Dockerfile
2.定义组成应用程序的服务,一般为定义 docker-compose.yml 文件
3.启动整个应用程序
app
|----web
| |----web.py
| |----requirements.txt
| |----Dockerfile
|
|----docker-compose.yml
app/web/web.py
from flask import Flask
from redis import Redis
app = Flask(__name__)
redis = Redis(host='redis', port=6379)
@app.route('/')
def hello():
redis.incr('number')
return 'Hello Shiyanlou! # %s' % redis.get('number')
if __name__ == "__main__":
app.run(host="0.0.0.0", port=80, debug=True)
app/web/requirements.txt
flask==0.10
redis==2.10.3
app/web/Dockerfile
FROM python:2.7
COPY ./ /web/
WORKDIR /web
RUN pip install -r requirements.txt
CMD python web.py
app/docker-compose.yml
services:
redis:
image: redis:3.2
web:
build:
context: /home/shiyanlou/app/web
depends_on:
- redis
ports:
- 8001:80/tcp
volumes:
- /home/shiyanlou/app/web:/web:rw
version: '3.0'
app/$ docker-compose up启动