• Docker高阶教程


    1.Docker Compose

      简介  

      

     作用:批量容器编排

    我自己的理解:Compose是官方的开源项目,需要安装!

    Dockerfile 让程序在任何地方运行。(web服务、redis、mysql、nginx。。。多个容器)

      

    docker-compose up 100个服务。

     Compose:重要的概念。

     安装

    (1)下载

    sudo curl -L "https://github.com/docker/compose/releases/download/1.27.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

    这个地址可能快点(国内):

    sudo curl -L "https://get.daocloud.io/docker/compose/releases/download/1.27.1/docker-compose-$(uname -s)-$(uname -m)-o /usr/local/bin/docker-compose

    (2)授权

    sudo chmod +x /usr/local/bin/docker-compose

    (3)体验
    https://docs.docker.com/compose/gettingstarted/
    步骤:1)Create a directory for the project:
    $ mkdir composetest
    $ cd composetest

     2)在项目目录中创建一个名为app.py的文件,内容如下:

    import time
    
    import redis
    from flask import Flask
    
    app = Flask(__name__)
    cache = redis.Redis(host='redis', port=6379)
    
    
    def get_hit_count():
        retries = 5
        while True:
            try:
                return cache.incr('hits')
            except redis.exceptions.ConnectionError as exc:
                if retries == 0:
                    raise exc
                retries -= 1
                time.sleep(0.5)
    
    
    @app.route('/')
    def hello():
        count = get_hit_count()
        return 'Hello World! I have been seen {} times.
    '.format(count)

    if
    __name__== "_main_":
    app.run(host="0.0.0.0",debug=True)
    3)在项目目录中创建另一个名为requirements.txt的文件,内容
    flask
    redis
    4)在项目目录中创建名为Dockerfile 的文件
    FROM python:3.6-alpine
    ADD . /code WORKDIR /code RUN pip install -r requirements.txt CMD ["python", "app.py"]
    #这告诉Docker:
    # 从python 3.6映射开始构建映射
    # 将当前目录添加.到/code映射中的路径。
    # 将工作目录设置为 /code
    # 安装python依赖项
    # 将容器的默认命令设置为 python app.py
    5)在项目目录中创建一个名为 docker-compose.yml 的文件:
    version: '3.8'
    services:
      web:
        build: .
        ports:
          - "5000:5000"
    volumes:
    - .:/code redis: image: "redis:alpine"
    compose.yml规则
    #3层

    version:'' #版本 (
    参照 :https://docs.docker.com/compose/compose-file/)
    services:    #服务
      服务1:web
        images
          build
          network
      服务2:redis
      服务3:redis
      .......
    #其他配置 网络、卷 、 全局规则
    volumes:
    networks:
    configs:


    启动项目:docker-compose up

     

     

     

    2.Docker Swarm 

    集群方式部署,4台阿里云服务器

    3.Docker Stack

    4.Docker secret

    5.Docker Config

       

  • 相关阅读:
    手把手教你使用markdown
    spring WebSocket详解
    springmvc请求参数异常处理
    蓝桥杯java 算法提高 摆花
    蓝桥杯java 算法提高 扶老奶奶过街
    蓝桥杯java 算法训练 未名湖边的烦恼
    蓝桥杯java 算法训练 Torry的困惑(基本型)
    java算法 硬币
    java算法 牌型种数
    java算法 方格填数
  • 原文地址:https://www.cnblogs.com/auldlangsynezh/p/13671992.html
Copyright © 2020-2023  润新知