Upgrading Traefik 2.2 to latest

Running Traefik 2.2 for quite a while ,
the upgrade from v1 to v2 was not easy ,
I like to keep things updated and i have some concern it will break up ,
Traefik 2,2 docker-compose:

  traefik:
    image: traefik:v2.2.0
    container_name: traefik
    restart: always
    command:
      - --log.level=INFO
      - --log.filePath=etc/traefik/log/traefik.log
      - --accessLog.filePath=etc/traefik/log/access.log
      - --accessLog.bufferingSize=100
      - --providers.docker=true
      - --providers.docker.exposedbydefault=false
   
      - --api
      #allow access on 8888 
      - --api.insecure=true
      - --entrypoints.traefik.address=:8888
      - --entrypoints.web.address=:80
      - --entrypoints.web.http.redirections.entrypoint.to=websecure
      - --entrypoints.web.http.redirections.entrypoint.scheme=https
      - --entrypoints.websecure.address=:443
      - --entrypoints.websecure.http.tls.certresolver=myresolver
      - --certificatesresolvers.myresolver.acme.dnschallenge=true
      - --certificatesresolvers.myresolver.acme.email=${CF_API_EMAIL}
    # TEST MODE
    #  - --certificatesresolvers.myresolver.acme.caserver=https://acme-staging-v02.api.letsencrypt.org/directory
      - --certificatesresolvers.myresolver.acme.storage=acme.json   
      - --certificatesresolvers.myresolver.acme.dnschallenge.provider=cloudflare
            # specify dynamic configuration file:
      - --providers.file.filename=/dynamic.yaml
      - --providers.file.watch=true
      #usually without it
   # network_mode: host
    ports:
      - 80:80
      - 443:443
      - 8888:8888
    environment:
      - CF_API_EMAIL=${CF_API_EMAIL}
      - CF_API_KEY=${CF_API_KEY}
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - /var/run/docker.sock:/var/run/docker.sock
      - ./traefik/acme.json:/acme.json    
      - ./traefik/:/etc/traefik/log/
      #for accessing non docker application (qnap)
      - ./traefik/dynamic.yaml:/dynamic.yaml
    labels:
      traefik.enable: true

      # Dashboard
      traefik.http.routers.traefik.rule: Host(`traefik.${DOMAINNAME}`)
      traefik.http.routers.traefik.entrypoints: websecure
      traefik.http.routers.traefik.service: api@internal
      traefik.http.routers.traefik.middlewares: auth
      traefik.http.middlewares.auth.basicauth.users: ${TRAEFIK_USER}:${TRAEFIK_PASS}


for labeling dockers with traefik :

  whoami:
    image: "containous/whoami"
    container_name: "whoami"
    command: --port=8082 # Our service listens on 8082
    ports:
      - "8082:8082"
    labels:
      traefik.enable: true
      traefik.http.routers.whoami.rule: Host(`whoami.${DOMAINNAME}`)
      traefik.http.routers.whoami.entrypoints: websecure
      traefik.http.services.whoami.loadbalancer.server.port: 8082
      COMPOSE_PATH: ${PWD}

but before i upgrade to newest version,
do i need to change anything in compose file?

Hello,

you have nothing to change

https://doc.traefik.io/traefik/v2.4/migration/v2/

Thanks a lot @ldez -Upgrade 2.2. --> 2.4.5 was easy and smoothly :slight_smile:

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.