阿里云服务器启动部署traefik

为了方便管理采用文件映射的方式改变traefik里面的一些配置,我的文件都是放在root目录下。安装docker之后。

  1. 在root目录下创建traefik文件夹,添加两个文件。
    (1)docker-compose-demo.yml
version: "3"

services:
  traefik:
    image: traefik:v2.5
    deploy:
      mode: global
      placement:
        constraints:
          - node.role == manager
      resources:
        limits:
          cpus: "0.5"
          memory: 512M
        reservations:
          cpus: "0.25"
          memory: 256M
    ports:
    这里隐射的是http端口
      - 80:80
    这里隐射的是dashboard端口
      - 8080:8080
    volumes:
    注意这里映射路径,/root/traefik/traefik-config.yml为我们traefik-config.yml的位置。
      - /root/traefik/traefik-config.yml:/etc/traefik/config.yml:ro
      - /var/run/docker.sock:/var/run/docker.sock:ro
    command:
      - --log.level=DEBUG
      - --global.sendanonymoususage=false
      - --api.dashboard=true
      - --api.insecure=true
      - --providers.docker.endpoint=unix:///var/run/docker.sock
      - --providers.docker.watch=true
      - --providers.docker.exposedbydefault=false
      - --providers.docker.swarmmode=true
      - --providers.file.filename=/etc/traefik/config.yml
      - --providers.file.watch=true
      - --entrypoints.http.address=:80

(2)traefik-config.yml
配置访问的dashboard等访问接口

http:
  services:
    dashboardHttp:
      loadBalancer:
        servers:
          - url: "http://127.0.0.1:8080/"
  routers:
    traefikDashboard:
      rule: "PathPrefix(`/dashboard/`)"
      service: "dashboardHttp"
      entrypoints: http
      tls: false
    traefikApi:
      rule: "PathPrefix(`/api/`)"
      service: "api@internal"
      ebtrypoints: http
      tls: false

(3)添加完成后启动

 docker stack deploy -c /root/traefik/docker-compose-demo.yml 相同的名字  #相同的名字就会是在同一个集群中

如果没有装过dockerswarm会报错,就执行以下三步,完成后继续执行之前的命令。

docker pull swarm
docker swarm init --advertise-addr 自己的ip
docker network create -d overlay --attachable traefik //初始化网络名称,上面填的那个网络的名字

(4)以上工作完成后,在浏览器上输入ip:8080可以定向到
在这里插入图片描述

  1. 从其他服务器上迁移微服务。
    (1)在root下又创建一个目录(服务名)我的为traefik-secrity.yml,将以下内容复制进去,然后输入docker stack deploy -c /root/security/traefik-security.yml security就能启动了,security为自己为这个服务起的名字,失败的话可能是需要登陆阿里云镜像,成功后就能访问了。注意:下面的security这个名字,每个服务都应该不一致!!!
version: '3'

services:
  security:
    image: 镜像名
    deploy:
      replicas: 1
      resources:
        limits:
          cpus: '0.50'
          memory: 512M
      labels:
        - traefik.enable=true
        - traefik.http.routers.security-http.rule=PathPrefix(`/前缀/`)
        - traefik.http.routers.security-http.entrypoints=http
        - traefik.http.routers.security-https.tls=false
        - traefik.http.services.security.loadbalancer.server.port=端口号
    networks:
      - traefik

networks:
  traefik:
    external: true

3.Docker Stack部署

docker stack rm 服务简称
docker rmi 镜像:版本号
docker pull 镜像:版本号
docker stack deploy -c 服务yml文件路径 服务简称
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

syf_wfl

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值