dgtlmoon / changedetection.io

The best and simplest free open source web page change detection, website watcher, restock monitor and notification service. Restock Monitor, change detection. Designed for simplicity - Simply monitor which websites had a text change for free. Free Open source web page change detection, Website defacement monitoring, Price change notification
https://changedetection.io
Apache License 2.0
15.85k stars 884 forks source link

`No matching WebSocket route handler for` after updating docker images #2366

Closed 42Craft closed 1 month ago

42Craft commented 1 month ago

After updating my Docker images to the latest version for browserless and changedetection, my setup has stopped functioning. I am seeking guidance on how to resolve this issue. Can someone point me in the right direction? I do not entirely understand how an update could have lead to my issue.

Logs

Browserless:

browserless.io:server:trace  Handling inbound WebSocket request on "/?stealth=1&--disable-web-security=true&blockAds=true" +0ms
browserless.io:server:error  No matching WebSocket route handler for "http://0.0.0.0:3000/?blockAds=true&launch=%7B%22stealth%22%3Atrue%2C%22args%22%3A%5B%22--disable-web-security%3Dtrue%22%5D%7D" +0ms

Change Detection:

Exception: WebSocket error: ws://playwright-chrome:3000/ 404 Not Found Not Found

Docker Compose Configuration

version: '3.2'
services:
  changedetection:
    container_name: changedetection
    image: ghcr.io/dgtlmoon/changedetection.io:latest
    hostname: changedetection
    volumes:
      - /volume2/docker/containers/changedetection/proxies.json:/datastore/proxies.json
      - /volume2/docker/containers/changedetection:/datastore
    ports:
      - <REDACTED>:5000 
    restart: unless-stopped
    environment:
      - TZ=Europe/Amsterdam
      - PUID=<REDACTED>
      - PGID=<REDACTED>
      - PLAYWRIGHT_DRIVER_URL=ws://playwright-chrome:3000/?stealth=1&--disable-web-security=true&blockAds=true
      - BASE_URL=<REDACTED>
    depends_on:
      - playwright-chrome
    networks:
      app_net:
        ipv4_address: "<REDACTED>"

  playwright-chrome:
    container_name: playwright-chrome
    image: ghcr.io/browserless/chrome:latest
    restart: unless-stopped
    expose:
      - 3000
    environment:
      - SCREEN_WIDTH=1920
      - SCREEN_HEIGHT=1024
      - SCREEN_DEPTH=16
      - ENABLE_DEBUGGER=false
      - TIMEOUT=60000
      - CONCURRENT=10
    dns:
      - <REDACTED>
    networks:
      app_net:
        ipv4_address: "<REDACTED>"

networks:
  app_net:  
    ipam:  
      driver: default  
      config:  
        - subnet: "<REDACTED>"

Steps to Reproduce

  1. Update Docker images for browserless and changedetection to the latest versions.
  2. Deploy the updated containers using the provided Docker Compose configuration.
  3. Attempt to use the changedetection service.

Expected Behavior

The services should function normally, with changedetection able to connect to the playwright-chrome service without errors.

Actual Behavior

The changedetection service logs indicate a WebSocket error (404 Not Found) when checking websites for differences.

Any insights or suggestions would be greatly appreciated. Thank you!