docker swarm模式使用traefik部署服务

  • 初始化一个swarm集群, 并把当前主机设置为swarm manage
  • docker swarm init

    2.如果想让其它机器加入该集群,可以执行以下命令(本例未使用)

    docker swarm join-token worker    可以输出加入该集群并作为worker角色的命令,如下:
    To add a worker to this swarm, run the following command:
    
        docker swarm join --token SWMTKN-1-4vr9acar13e6cbvogs3ptir8fz55jubdkjzyi4u2vljy2i38t8-b94ezwkgbbmt12opnqdmaqrcg 192.168.2.63:2377

    3.创建一个docker swarm network, traefik反向代理和我们web服务都要用这个network

    docker network create --driver=overlay test-traefik --attachable

    4.创建trafik反向代理service

    在swarm的manager机器上执行以下命令(具体参数设置可参考:https://docs.traefik.io/user-guide/swarm-mode/)

    docker service create    --name traefik     --constraint=node.role==manager     --publish 80:80 --publish 8080:8080     
    --mount type=bind,source=/var/run/docker.sock,target=/var/run/docker.sock     
    --network test-traefik     traefik     
    --docker     
    --docker.swarmmode     
    --docker.domain=traefik     
    --docker.watch     
    --web

    启动后,可以通过http://{manager-ip}:8080/来访问trafik的web监控界面,可以动态看到反向代理的配置

    5.编辑compose-file

    vim nginx.yaml
    version: '3'
    services:
      web:
        image: nginx
        networks:
        - "test-traefik"
        deploy:
          labels:
          - "traefik.frontend.rule=Host:www.test.com"
          - "traefik.port=80"
    networks:
      test-traefik:
        external: true

    6.然后部署compose-file

    docker stack deploy --compose-file nginx.yaml web

    7.在本地hosts文件添加一行

    192.168.2.63 www.test.com

    8.访问192.168.2.63:8080与www.test.com。 截图如下

    原文地址:http://blog.51cto.com/6764097/2066670

    时间: 2024-07-30 02:58:07

    docker swarm模式使用traefik部署服务的相关文章

    Docker Swarm集群中部署Traefik负载均衡器

    一.创建单节点的Docker Swarm集群 docker swarm init 二.在Swarm集群中创建一个网络 docker network create --driver=overlay traefik --attachable 三.在Swarm集群中部署traefik负载均衡器服务 docker service create \ --name traefik \ --constraint=node.role==manager \ --publish 80:80 --publish 80

    同一个Docker swarm集群中部署多版本的测试环境

    先介绍下用到的技术 Docker swarm: Docker官方的集群管理工具,相比kubernetes更加简单,容易入门.https://docs.docker.com/engine/swarm/ Traefik: 一个现代化的反向代理工具,原生支持Docker swarm模式,可以实现swarm的动态代理.https://docs.traefik.io/user-guide/swarm-mode/ 下图展示主要的思路: 在Docker swarm中创建某个测试版本service时,通过设置s

    Docker Swarm集群实践——部署篇

    最新消息 Docker在上周的DockerCon技术大会上发布了1.12版核心产品Docker Engine,最大的新特性是Docker Swarm已经被整合到了Docker Engine里面而不再是一个单独的工具了,这样就可以更容易的把多个Docker主机组合成一整个规模更大可靠性更高的逻辑单元.Docker的掌舵者 Adrian Mouat相信这种新的集群模式可以大大增强Docker在相关领域的竞争力. 把Docker Swarm整合进Docker Engine是一个重大改进,但它也只是一个

    docker swarm英文文档学习-12-在集群模式中的Raft共识

    Raft consensus in swarm mode 在集群模式中的Raft共识 当Docker引擎在集群模式下运行时,manager节点实现Raft 共识算法来管理全局集群状态.Docker swarm模式使用共识算法的原因是为了确保集群中负责管理和调度任务的所有manager节点都存储相同的一致性状态.跨集群具有相同的一致状态意味着在出现故障时,任何管理器节点都可以接收任务并将服务恢复到稳定状态.例如,如果集群中负责调度任务的Leader Manager意外死亡,那么任何其他Manage

    Docker Swarm集群部署实战

    基本概念: Swarm介绍:Swarm是Docker公司在2014年12月初发布的一套较为简单的工具,用来管理Docker集群,它将一群Docker宿主机变成一个单一的虚拟的主机.Swarm使用标准的Docker API接口作为其前端访问入口,换言之,各种形式的Docker Client(dockerclient in Go, docker_py,docker等)均可以直接与Swarm通信.Swarm几乎全部用Go语言来完成开发,Swarm0.2版本增加了一个新的策略来调度集群中的容器,使得在可

    云计算之路-阿里云上:针对 docker swarm 故障的部署调整以及应急措施

    针对上周 docker swarm 集群的频繁故障(详见故障一 .故障二.故障三),我们今天对 docker swarm 集群的部署进行了如下调整. 将 docker engine 由  “17.12.0-ce, build c97c6d6”  升级至  “17.12.1-ce, build 7390fc6” ,这是 docker 在 2 月 27 日发布的最新稳定版. ~# docker -v Docker version 17.12.1-ce, build 7390fc6 将之前的 “5 个

    docker——三剑客之Docker swarm

    Docker Swarm是Docker官方的三剑客项目之一,提供Docker容器集群服务,是Docker官方对容器云生态进行支持的核心方案.使用它,用户可以将多个Docker主机封装为单个大型的虚拟Docker主机,快速打造一套容器云平台. Docker Swarm是Docker公司推出的官方容器集群平台,基于Go语言实现.目前,包括Rackspace在内的许多平台都采用了Swarm,用户很容易在AWS等公有云平台使用Swarm. Swarm的前身是Beam项目和libswarm项目,首个正式版

    Docker Swarm Mode简介与核心概念

    什么是Docker Swarm Docker Swarm是Docker官方的一种容器编排方案,用于管理跨主机的Docker容器,可以快速对指定服务进行水平扩展.部署.删除 一个Docker Swarm集群通常由多个安装有Docker且运行在Docker Swarm Mode的主机组成,角色包含Managers(管理者).Workers(执行节点),一个节点可以兼拥有这两个角色或之一 在Docker 1.12以前,Docker Swarm作为一个独立的集群容器编排软件(Swarmkit)形式存在,

    行车记+翻车记:.NET Core 新车改造,C# 节能降耗,docker swarm 重回赛道

    非常抱歉,10:00~10:30 左右博客站点出现故障,给您带来麻烦了,请您谅解. 故障原因与博文中谈到的部署变更有关,但背后的问题变得非常复杂,复杂到我们都在怀疑与阿里云服务器 CPU 特性有关. 这篇博文本来准备 9:30 左右发布的,但发布博文时出现了 docker swarm 部署异常情况,切换到 docker-compose 部署后问题依旧,一直到 10:30 左右才恢复正常,继续发布这篇博文,在标题中加上了“翻车记”. 原先的博文正文开始: 周一向大家汇报车况之后,我们的 .NET