Skip to content
This repository has been archived by the owner on Jul 18, 2020. It is now read-only.
/ traefik-etcd-sidecar Public archive

Sidecar for registering treafik backend service by etcd

Notifications You must be signed in to change notification settings

zarvd/traefik-etcd-sidecar

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sidecar for registering treafik backend service by etcd

Goal

  • Register Traefik Backend dynamically through Etcd
  • Register and unregister by Readiness check
  • Non-intrusive code by docker Sidecar pattern

Example

docker-compose:

---
version: "3"

services:
  api:
    image: emilevauge/whoami
    restart: always

  api-traefik-sidecar:
    image: ccc13/traefik-etcd-sidecar:v0.0.3
    container_name: api_traefik_sidecar
    command:
      - "start"
      - "--etcd-endpoints=127.0.0.1:2379"
      - "--etcd-username=traefik"
      - "--etcd-password=traefik"
      - "--traefik-backend-name=api"
      - "--traefik-backend-node=node1"
      - "--traefik-backend-url=http://api:80"
      - "--traefik-backend-weight=1"
      - "--traefik-etcd-prefix=/traefik"
      - "--service-http-readiness-host=http://api"
      - "--service-http-readiness-port=80"
      - "--service-http-readiness-path=/ping"
      - "--service-http-readiness-interval=2"
    depends_on:
      - api

Development

Build

require Golang installed(TODO build by Docker)

make build-for-linux

Package Docker Image

make docker-build-tag="latest" build-alpine-image

License

MIT