• docker入门2-docker service


    docker service介绍

    service是生产环境中某个image的container集合。一个service只使用一个image,但它编排这个image的运行方式,比如使用哪个端口,根据需求运行多少份container。在docker stack负载均衡中,一个service中的所有container可能均匀的分布在多台虚拟机/物理机中,但它们共用一个端口,看起来就想是运行在一台机器中的服务一样。改变业务吞吐量,只需要更改这个service的container数量。

    docker service命令

    编写docker-compose.yml

    使用docker-compose.yml文件,可以轻松定义,运行和扩展docker平台的services。

    docker-compose.yml

    version: "3"
    services:
      web:
        image:cchenyang/get-started:part2
        deploy:
          replicas: 5
          resources:
            limits:
              cpus: "0.1"
              memory: 50M
          restart_policy:
            # immediately restart containers if one fails
            condition: on-failure
        ports:
          # map port 8001 on the host to web's port 8001
          - "8001:8001"
        networks:
          - webnet
    networks:
      webnet:
    

    运行负载均衡的docker app

    初始化swarm

    在部署docker app前,需要现初始化集群管理docker swarm init,完成之后才可以在这个初始化的swarm上部署。关于swarm后章说明。

    部署docker app

    部署app时给其取个名字docker stack depoly -c docker-compose.yml getstartedlab

    根据上面的yml文件,当前单service stack用同一个image运行了5个container。

    查看docker service

    跟查看container的命令docker container ls类似(这里执行这句会找到5个container),查看docker service的命令是docker service ls,也可使用命令docker stack services getstartedlab,这里意思是查看stack下的名为getstartedlab的service。

    伸缩docker app

    直接修改yml文件中的replicas参数,再部署一遍docker stack depoly -c docker-compose.yml getstartedlab就可以改变container的数量。

    删除docker app

    删除stackdocker stack rm getstartedlab

    卸载swarmdocker swarm leave --force

    系列导航

    docker入门1-docker container
    docker入门3-docker swarm
    docker入门4-docker stack

  • 相关阅读:
    linux下解压命令详解
    SSL简介及工作原理
    在CentOS中安装gcc配置c语言开发环境(转)
    JTable表格(隐藏表头)(转)
    一个云平台开源项目Eucalyptus
    「CF645E」 Intellectual Inquiry
    「CERC2017」Donut Drone
    洛谷P3943 星空
    「CSPS 2019」格雷码
    洛谷P3941 入阵曲
  • 原文地址:https://www.cnblogs.com/agichen/p/10426917.html
Copyright © 2020-2023  润新知