speedtest icon indicating copy to clipboard operation
speedtest copied to clipboard

Dual mode is broken

Open EsmailELBoBDev2 opened this issue 1 year ago • 2 comments

Description

Whenever I try to use dual mode it does not let me select servers from dropmenu. it only see its local self but not the remote server I added

Server

Every info you can provide about your server: web server, database, PHP version, ... as well as server-side speedtest settings If possible, provide an URL to your speedtest so we can check it

Client

Brave, Arch Linux

Steps to reproduce

  • Follow https://github.com/librespeed/speedtest/blob/master/doc_docker.md
  • when using mode: dual it does not show all servers in servers.json file

Expected behaviour

in dual mode it sees itself and other server and let me select between servers

Screenshots

image with dual mode

image without dual mode, I run 2 images now one with mode frontend and other with backend locally

configs

servers.json:

[
    {
        "name": "Server 1",
        "server": "//public-ip:port/",
        "dlURL": "garbage.php",
        "ulURL": "empty.php",
        "pingURL": "empty.php",
        "getIpURL": "getIP.php"
    },
    { 
        "name": "Server 2",
        "server": "//public-ip:port/",
        "dlURL": "garbage.php",
        "ulURL": "empty.php",
        "pingURL": "empty.php",
        "getIpURL": "getIP.php"
    }
]

docker compose (main server)

  librespeed:
    container_name: librespeed
    image: ghcr.io/librespeed/speedtest:latest
    restart: always
    volumes:
      - ./librespeed/servers.json:/servers.json
    environment:
      MODE: dual
      #CORS_ALLOW_ORIGIN: "*"
      #TITLE: "LibreSpeed"
      #TELEMETRY: "false"
      #ENABLE_ID_OBFUSCATION: "false"
      #REDACT_IP_ADDRESSES: "false"
      #PASSWORD:
      #EMAIL:
      #DISABLE_IPINFO: "false"
      #IPINFO_APIKEY: "your api key"
      #DISTANCE: "km"
      #WEBPORT: 80
    ports:
      - "8020:80" # webport mapping (host:container)

the second server

  librespeed:
    container_name: librespeed
    image: ghcr.io/librespeed/speedtest:latest
    restart: always
    volumes:
      - ./librespeed/servers.json:/servers.json
    environment:
      MODE: backend
      #MODE: frontend
      #TITLE: "LibreSpeed"
      #TELEMETRY: "false"
      #ENABLE_ID_OBFUSCATION: "false"
      #REDACT_IP_ADDRESSES: "false"
      #PASSWORD:
      #EMAIL:
      #DISABLE_IPINFO: "false"
      #IPINFO_APIKEY: "your api key"
      #DISTANCE: "km"
      #WEBPORT: 80
    ports:
      - "8020:80" # webport mapping (host:container)

but when I use both images one for frontend and other for backend it works fine on main server and I can see both servers

EsmailELBoBDev2 avatar Sep 22 '24 16:09 EsmailELBoBDev2

and now I cant access it via https https://speedtest.esmailelbob.xyz/ it says No servers available but locally it works great so not sure what I really did wrong and if its bug or issue on my end image image

EsmailELBoBDev2 avatar Sep 22 '24 17:09 EsmailELBoBDev2

Has it still broken? I started docker container in dual mode, and other servers don't see this server of librespeed, because they don't see empty.php.

> /Docker/Librespeedtest # docker compose up -d
> WARN[0000] /Docker/Librespeedtest/docker-compose.yaml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion
> [+] Running 1/1
>  ✔ Container speedtest  Started0.3s

I tried to request this file inside the container and it didn't work.

/Docker/Librespeedtest # docker exec -it speedtest sh
/var/www/html # curl http://127.0.0.1:8080/empty.php
404 Not Found

Not Found

The requested URL was not found on this server.


Apache/2.4.63 (Unix) Server at 127.0.0.1 Port 8080

/var/www/html # ls backend favicon.ico index.php speedtest.js speedtest_worker.js

/var/www/html # cd backend
/var/www/html/backend # ls
country_asn.mmdb         empty.php                garbage.php              geoip2.phar              getIP.php                getIP_ipInfo_apikey.php  getIP_util.php

If I start a librespeed container in Backend mode, it works.

tkkost avatar Jul 14 '25 00:07 tkkost

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

github-actions[bot] avatar Dec 15 '25 18:12 github-actions[bot]

This issue was automatically closed due to inactivity.

github-actions[bot] avatar Dec 23 '25 18:12 github-actions[bot]