本文共 1438 字,大约阅读时间需要 4 分钟。
简介
1.Docker官方三剑客项目之一。
2.负责快速部署分布式应用。 3.定义和运行多个Docker容器应用。 4.微服务一般有多个实例,为了提高效率,使用Compose管理容器,无需每个微服务都要手动启停。
功能
1.有时候,我们的一个项目由多个服务,如Web项目,数据库,负载均衡相互配合完成某项任务,这时就需要docker-compose。
2.通过docker-compose.yml模板文件定义一组关联的容器为一个项目(project)。 3.默认管理对象是项目,通过子命令对项目中一组容器进行便捷声明周期管理。
基本概念
1.应用容器,可以包括若干相同镜像的容器实例。
1.一组关联的应用容器组成完整的业务单元。
2.一个项目由多个服务(容器)关联而成,compose 面向项目进行管理。 3.在docker-compose.yml文件中定义。
# curl -L https://get.daocloud.io/docker/compose/releases/download/1.22.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
# chmod +x /usr/local/bin/docker-compose
# docker-compose version
# mkdir hlyCompose
# cd hlyCompose
# vi app.py
from flask import Flaskfrom redis import Redisapp=Flask(__name__)redis=Redis(host='redis',port=6379)@app.route('/')def hello(): count = redis.incr('hits') return 'Hello World! 该页面已被访问{} 次。\n'.format(count)if __name__ == "__main__": app.run(host="0.0.0.0",debug=True)
保存退出
# vi Dockerfile
FROM python:3.6-alpineADD . /codeWORKDIR /codeRUN pip install redis flaskCMD ["python", "app.py"]
# vi docker-compose.yml
version: '3'services: web: build: . ports: - "5000:5000" redis: image: "redis:alpine"
# docker-compose up
完
公众号:【星尘Pro】
github:
推荐阅读
参考
转载地址:http://qbfsi.baihongyu.com/