美文网首页Docker 自修
Docker 自修笔记(四)

Docker 自修笔记(四)

作者: 心甘情愿_Root | 来源:发表于2017-07-21 10:22 被阅读0次

    本博客为JDGan自修Docker的笔记,如有粗鄙之处,还请见谅~

    阅读本博客前,请确定掌握了前一篇blog:Docker 集群

    Docker 栈

    前面在上一章里,已经通过docker stack deploy部署了一个栈,但是实际应用当中,我们不可能只有一个栈,所以本章就多个栈的情况,进行介绍。

    添加新服务并重新部署

    打开前一章的docker-compose.yml,并新增一个服务visualizer

    version: "3"
    services:
      web:
        image: username/repo:tag
        deploy:
          replicas: 5
          restart_policy:
            condition: on-failure
          resources:
            limits:
              cpus: "0.1"
              memory: 50M
        ports:
          - "80:80"
        networks:
          - webnet
      visualizer:
        image: dockersamples/visualizer:stable
        ports:
          - "8080:8080"
        volumes:
          - "/var/run/docker.sock:/var/run/docker.sock"
        deploy:
          placement:
            constraints: [node.role == manager]
        networks:
          - webnet
    networks:
      webnet:
    

    按照上一章的流程,拷贝到集群控制器 Home 下,执行

    $ docker stack deploy -c docker-compose.yml getstartedlab
    

    直接通过浏览器访问<ip>:<port>,可以看到如下图所示的 Docker node图。

    也可通过docker stack ps getstartedlab查看。

    添加 redis 数据库服务

    通过上面的方法,再添加redis服务到docker-compose.yml

      redis:
        image: redis
        ports:
          - "6379:6379"
        volumes:
          - ./data:/data
        deploy:
          placement:
            constraints: [node.role == manager]
        networks:
          - webnet
    

    placement指定了该服务部署的节点角色位置
    volumes指定redis可以通过/data访问./data,注意需要保证该目录的存在mkdir ./data
    再次直接部署服务

    $ docker stack deploy -c docker-compose.yml getstartedlab
    

    这样就可以直接使用redis数据库服务了。


    相关文章

      网友评论

        本文标题:Docker 自修笔记(四)

        本文链接:https://www.haomeiwen.com/subject/zabskxtx.html