Docker $ Docker 三剑客:Docker-Compose

版权声明:自由转载-非商用-保持署名,听说看完点赞的人都挺帅。QQ交流群:865061230 https://blog.csdn.net/Sirius_hly/article/details/83650750

一.Docker-Compose 简介

简介

1.Docker官方三剑客项目之一。
2.负责快速部署分布式应用。
3.定义和运行多个Docker容器应用。
4.微服务一般有多个实例,为了提高效率,使用Compose管理容器,无需每个微服务都要手动启停。

功能

1.有时候,我们的一个项目由多个服务,如Web项目,数据库,负载均衡相互配合完成某项任务,这时就需要docker-compose。
2.通过docker-compose.yml模板文件定义一组关联的容器为一个项目(project)。
3.默认管理对象是项目,通过子命令对项目中一组容器进行便捷声明周期管理。

基本概念

  • 1.服务(service)

1.应用容器,可以包括若干相同镜像的容器实例。

  • 2 .项目(project)

1.一组关联的应用容器组成完整的业务单元。
2.一个项目由多个服务(容器)关联而成,compose 面向项目进行管理。
3.在docker-compose.yml文件中定义。

二.实战(CentOS)

1.下载docker-compose
# curl -L https://github.com/docker/compose/releases/download/1.20.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
2.安装
# chmod +x /usr/local/bin/docker-compose
3.查看版本
# docker-compose version
5.在任意目录新建文件夹
# mkdir hlyCompose
6.进入文件夹
# cd hlyCompose
7.新建文件加入代码
# vi app.py
from flask import Flask
from redis import Redis
app=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)

保存退出

8.编写Dockerfile文件
# vi Dockerfile
FROM python:3.6-alpine
ADD . /code
WORKDIR /code
RUN pip install redis flask
CMD ["python", "app.py"]
9.编写docker-compose.yml
# vi docker-compose.yml
version: '3'
services:
   web:
        build:  .
        ports:
            - "5000:5000"

   redis:
       image: "redis:alpine"

在这里插入图片描述

10.执行命令
# docker-compose up

在这里插入图片描述

11.输入网址:5000刷新访问

完成!

参考https://yeasy.gitbooks.io/docker_practice/content/

猜你喜欢

转载自blog.csdn.net/Sirius_hly/article/details/83650750
今日推荐