TLS - page not rendering properly

When I enable TLS for firefly iii the page isnt rendered or doesnt load properly. Filling in the login detail and clicking the login button doesnt do anything.
However, using HTTP works fine on port 80, commenting out

      - "traefik.http.routers.app.tls=true"

      - "traefik.http.routers.app.tls.certresolver=myresolver"

and changing

  - "traefik.http.routers.app.entrypoints=websecure"

to

  - "traefik.http.routers.app.entrypoints=web"

443 enabled looks like this:
image

standard HTTP on port 80 looks like this (which is correct):

This is the full docker-compose.yml for firefly iii

services:
  app:
    image: fireflyiii/core:latest
    hostname: app
    container_name: firefly_iii_core
    restart: always
    volumes:
      - firefly_iii_upload:/var/www/html/storage/upload
    env_file: .env
    networks:
#      - firefly_iii
      - traefik
    ports:
      - 8081:8080
    depends_on:
      - db
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.app.rule=Host(`firefly.local`)"
      - "traefik.http.routers.app.tls=true"
      - "traefik.http.routers.app.entrypoints=websecure"
      - "traefik.http.routers.app.tls.certresolver=myresolver"
      - "traefik.http.services.app.loadbalancer.server.port=8080"
  db:
    image: mariadb:lts
    hostname: db
    container_name: firefly_iii_db
    restart: always
    env_file: .db.env
    networks:
 #     - firefly_iii
      - traefik
    volumes:
      - firefly_iii_db:/var/lib/mysql
  cron:
    #
    # To make this work, set STATIC_CRON_TOKEN in your .env file or as an environment variable and replace REPLACEME below
    # The STATIC_CRON_TOKEN must be *exactly* 32 characters long
    #
    image: alpine
    restart: always
    container_name: firefly_iii_cron
    command: sh -c "echo \"0 3 * * * wget -qO- http://app:8080/api/v1/cron/mZBvMauJS5JMlV7VJpa4znDXdLeSlIpH\" | crontab - && crond -f -L /dev/stdout"
    networks:
  #    - firefly_iii
      - traefik
volumes:
   firefly_iii_upload:
   firefly_iii_db:

networks:
  #firefly_iii:
  #  driver: bridge
  traefik:
    external: true

This is my traefik docker-compose

services:
  reverse-proxy:
    # The official v2 Traefik docker image
    image: traefik:v3.1
    # Enables the web UI and tells Traefik to listen to docker
#    command: --api.insecure=true --providers.docker
    command: --configFile=/etc/traefik/traefik.yml
#      - "--api.insecure=true"
#      - "--configFile=/etc/traefik/traefik.yml"
#      - "--providers.docker=true"
#      - "--providers.docker.exposedbydefault=false"
#      - "--entryPoints.web.address=:80"
    ports:
      # The HTTP port
      - "80:80"
      # The Web UI (enabled by --api.insecure=true)
      - "8080:8080"
      # SSL port
      - "443:443"
    volumes:
      # So that Traefik can listen to the Docker events
      - /var/run/docker.sock:/var/run/docker.sock
      - ./traefik.yml:/etc/traefik/traefik.yml
      - ./acme.json:/acme.json
    networks:
      - traefik

networks:
  traefik:
    external: true

Looks like the CSS is missing. Enable browsers developer tools network tab to see what resources the main page is trying to load.

Also share your Traefik static config file.

I found the solution in the firefly iii .env file
For those looking for the answer in the future:

firefly .env

# TRUSTED_PROXIES is a useful variable when using Docker and/or a reverse proxy.
# Set it to ** and reverse proxies work just fine.
TRUSTED_PROXIES= **

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