Problem with nodered and some service node that needs port 80

Hi guys,

I feel kinda stupid that I didn't get that to run and I could need someone pointing me into the right direction.

I got node-red running behind traefik just fine:


  node-red:
     image: nodered/node-red:latest
     volumes:
       - type: volume
         source: nodered-data
         target: /data
     environment:
       - TS=Europe/Vienna
     labels:
        - "traefik.enable=true"
        - "traefik.http.routers.nodered.entrypoints=http"
        - "traefik.http.routers.nodered.rule=Host(`${NODERED_IP}`)"

        - "traefik.http.routers.nodered-secure.tls=true"
        - "traefik.http.routers.nodered-secure.entryPoints=https"
        - "traefik.http.routers.nodered-secure.rule=Host(`${NODERED_HOSTNAME}`)"
     networks:
      - traefik_proxy

But here's the problem: I need the entry-point http to actually go to a different port than the https entry point.

My idea of using
- "traefik.http.services.nodered.loadbalancer.server.port=8080"
and
- "traefik.http.services.nodered-secure.loadbalancer.server.port=1880"
did not work as traefik seems to redirect all to one port.

Any idea on how to get that right?

Cheers
Rei

Hello,

in this case the service must explicitly set on the routers:

node-red:
  image: nodered/node-red:latest
  volumes:
    - type: volume
      source: nodered-data
      target: /data
  environment:
    - TS=Europe/Vienna
  labels:
    - "traefik.enable=true"

    - "traefik.http.routers.nodered.entrypoints=http"
    - "traefik.http.routers.nodered.rule=Host(`${NODERED_IP}`)"
    - "traefik.http.routers.nodered.service=nodered"

    - "traefik.http.services.nodered.loadbalancer.server.port=8080"

    - "traefik.http.routers.nodered-secure.tls=true"
    - "traefik.http.routers.nodered-secure.entryPoints=https"
    - "traefik.http.routers.nodered-secure.rule=Host(`${NODERED_HOSTNAME}`)"
    - "traefik.http.routers.nodered-secure.service=nodered-secure"
    
    - "traefik.http.services.nodered-secure.loadbalancer.server.port=1880"
  networks:
  - traefik_proxy