Timestamp issue I am trying to sort out

So I am having an issue with timestamps with the data, I have Chirpstack running in a docker container on a windows machine. As a test environment while I am building a frontend to be able to view the sensor data. I need help on how do I set chirpstacks time to UTC +2 for the correct time for South Africa

this is my docker-compose.yml file

services:
  chirpstack:
    image: chirpstack/chirpstack:4
    command: -c /etc/chirpstack
    restart: unless-stopped
    volumes:
      - ./configuration/chirpstack:/etc/chirpstack
      - /etc/timezone:/etc/timezone:ro
      - /etc/localtime:/etc/localtime:ro
    depends_on:
      - postgres
      - mosquitto
      - redis
    environment:
      - MQTT_BROKER_HOST=mosquitto
      - REDIS_HOST=redis
      - POSTGRESQL_HOST=postgres
      - TZ=Africa/Johannesburg
    ports:
      - "8080:8080"
    networks:
      - chirpstack-net

  chirpstack-gateway-bridge:
    image: chirpstack/chirpstack-gateway-bridge:4
    restart: unless-stopped
    ports:
      - "1700:1700/udp"
    volumes:
      - ./configuration/chirpstack-gateway-bridge:/etc/chirpstack-gateway-bridge
    environment:
      - INTEGRATION__MQTT__EVENT_TOPIC_TEMPLATE=eu868/gateway/{{ .GatewayID }}/event/{{ .EventType }}
      - INTEGRATION__MQTT__STATE_TOPIC_TEMPLATE=eu868/gateway/{{ .GatewayID }}/state/{{ .StateType }}
      - INTEGRATION__MQTT__COMMAND_TOPIC_TEMPLATE=eu868/gateway/{{ .GatewayID }}/command/#
    depends_on:
      - mosquitto
    networks:
      - chirpstack-net

  chirpstack-gateway-bridge-basicstation:
    image: chirpstack/chirpstack-gateway-bridge:4
    restart: unless-stopped
    command: -c /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge-basicstation-eu868.toml
    ports:
      - "3001:3001"
    volumes:
      - ./configuration/chirpstack-gateway-bridge:/etc/chirpstack-gateway-bridge
    depends_on:
      - mosquitto
    networks:
      - chirpstack-net

  chirpstack-rest-api:
    image: chirpstack/chirpstack-rest-api:4
    restart: unless-stopped
    command: --server chirpstack:8080 --bind 0.0.0.0:8090 --insecure
    ports:
      - "8091:8090"
    depends_on:
      - chirpstack
    networks:
      - chirpstack-net

  postgres:
    image: postgres:14-alpine
    restart: unless-stopped
    volumes:
      - ./configuration/postgresql/initdb:/docker-entrypoint-initdb.d
      - postgresqldata:/var/lib/postgresql/data
    environment:
      - POSTGRES_USER=
      - POSTGRES_PASSWORD=
      - POSTGRES_DB=
      - TZ=Africa/Johannesburg
    ports:
      - "5432:5432"
    networks:
      - chirpstack-net

  redis:
    image: redis:7-alpine
    restart: unless-stopped
    command: redis-server --save 300 1 --save 60 100 --appendonly no
    volumes:
      - redisdata:/data
    networks:
      - chirpstack-net

  mosquitto:
    image: eclipse-mosquitto:2
    restart: unless-stopped
    ports:
      - "1883:1883"
    volumes:
      - ./configuration/mosquitto/config/:/mosquitto/config/
    networks:
      - chirpstack-net

  node-app:
    build:
      context: .
      dockerfile: Dockerfile
    ports:
      - "4001:4001"
    environment:
      - MQTT_BROKER=tcp://mosquitto:1883
      - POSTGRES_HOST=
      - POSTGRES_USER=
      - POSTGRES_PASSWORD=
      - POSTGRES_DB=
      - POSTGRES_PORT=5432
      - CHIRPSTACK_HOST=chirpstack
      - CHIRPSTACK_PORT=8080
      - CHIRPSTACK_API_TOKEN=
      - TZ=Africa/Johannesburg
    volumes:
      - .:/app
    depends_on:
      - mosquitto
      - postgres
    restart: unless-stopped
    networks:
      - chirpstack-net

volumes:
  postgresqldata:
  redisdata:

networks:
  chirpstack-net:
    driver: bridge

these are the times i get back with running these console commands
C:\intellisecIoT\nodejs\intelliseciot>docker exec -it intelliseciot-chirpstack-1 date
Thu Sep 11 07:41:04 UTC 2025

C:\intellisecIoT\nodejs\intelliseciot>docker exec -it intelliseciot-postgres-1 date
Thu Sep 11 09:41:55 SAST 2025

C:\intellisecIoT\nodejs\intelliseciot>docker exec -it intelliseciot-node-app-1 date
Thu Sep 11 09:42:11 SAST 2025

I am struggling to get the chirpstack to be the same time as the other two and i think that is why i get data in with incorrect timestamps here is a screenshot of my devices page it was 9:59am when I took the screenshot as you can see there was a error with the test io controller