Skip to content

click Run Agent error #267

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
Caelorin opened this issue Feb 10, 2025 · 13 comments
Open

click Run Agent error #267

Caelorin opened this issue Feb 10, 2025 · 13 comments

Comments

@Caelorin
Copy link

Caelorin commented Feb 10, 2025

help me please :(
windows11,python3.11,docker,ollama
Directly opening Ollama and OpenWebUI can normally use the locally deployed large model, but when using the [browser use webui], it cannot be used normally.

config:

Image
Image

click Run Agent docker log
2025-02-10 22:42:05 browser-use-webui-1 | [120:135:0210/144205.394667:ERROR:ssl_client_socket_impl.cc(877)] handshake failed; returned -1, SSL error code 1, net_error -100
2025-02-10 22:42:05 browser-use-webui-1 | 2025-02-10 14:42:05,394 DEBG 'persistent_browser' stderr output:
2025-02-10 22:42:05 browser-use-webui-1 | [120:135:0210/144205.394667:ERROR:ssl_client_socket_impl.cc(877)] handshake failed; returned -1, SSL error code 1, net_error -100
2025-02-10 22:42:05 browser-use-webui-1 |
2025-02-10 22:42:05 browser-use-webui-1 | 2025-02-10 14:42:05,394 DEBG 'persistent_browser' stderr output:
2025-02-10 22:42:05 browser-use-webui-1 | [120:135:0210/144205.394667:ERROR:ssl_client_socket_impl.cc(877)] handshake failed; returned -1, SSL error code 1, net_error -100
2025-02-10 22:42:05 browser-use-webui-1 |
2025-02-10 22:42:06 browser-use-webui-1 | INFO [agent] 🚀 Starting task: go to https://www.baidu.com and type 'OpenAI' click search and give me the first url
2025-02-10 22:42:06 browser-use-webui-1 | 2025-02-10 14:42:06,815 DEBG 'webui' stdout output:
2025-02-10 22:42:06 browser-use-webui-1 | INFO [agent] 🚀 Starting task: go to https://www.baidu.com and type 'OpenAI' click search and give me the first url
2025-02-10 22:42:06 browser-use-webui-1 |
2025-02-10 22:42:06 browser-use-webui-1 | 2025-02-10 14:42:06,815 DEBG 'webui' stdout output:
2025-02-10 22:42:06 browser-use-webui-1 | INFO [agent] 🚀 Starting task: go to https://www.baidu.com and type 'OpenAI' click search and give me the first url
2025-02-10 22:42:06 browser-use-webui-1 |
2025-02-10 22:42:06 browser-use-webui-1 | 10/02/2025 14:42:06 Got connection from client 127.0.0.1
2025-02-10 22:42:06 browser-use-webui-1 | 10/02/2025 14:42:06 1 other clients
2025-02-10 22:42:06 browser-use-webui-1 | 10/02/2025 14:42:06 webSocketsHandshake: unknown connection error
2025-02-10 22:42:06 browser-use-webui-1 | 10/02/2025 14:42:06 Client 127.0.0.1 gone
2025-02-10 22:42:06 browser-use-webui-1 | 10/02/2025 14:42:06 Statistics events Transmit/ RawEquiv ( saved)
2025-02-10 22:42:06 browser-use-webui-1 | 10/02/2025 14:42:06 TOTALS : 0 | 0/ 0 ( 0.0%)
2025-02-10 22:42:06 browser-use-webui-1 | 10/02/2025 14:42:06 Statistics events Received/ RawEquiv ( saved)
2025-02-10 22:42:06 browser-use-webui-1 | 10/02/2025 14:42:06 TOTALS : 0 | 0/ 0 ( 0.0%)
2025-02-10 22:42:06 browser-use-webui-1 | 2025-02-10 14:42:06,899 DEBG 'x11vnc_log' stdout output:
2025-02-10 22:42:06 browser-use-webui-1 | 10/02/2025 14:42:06 Got connection from client 127.0.0.1
2025-02-10 22:42:06 browser-use-webui-1 | 10/02/2025 14:42:06 1 other clients
2025-02-10 22:42:06 browser-use-webui-1 | 10/02/2025 14:42:06 webSocketsHandshake: unknown connection error
2025-02-10 22:42:06 browser-use-webui-1 | 10/02/2025 14:42:06 Client 127.0.0.1 gone
2025-02-10 22:42:06 browser-use-webui-1 | 10/02/2025 14:42:06 Statistics events Transmit/ RawEquiv ( saved)
2025-02-10 22:42:06 browser-use-webui-1 | 10/02/2025 14:42:06 TOTALS : 0 | 0/ 0 ( 0.0%)
2025-02-10 22:42:06 browser-use-webui-1 | 10/02/2025 14:42:06 Statistics events Received/ RawEquiv ( saved)
2025-02-10 22:42:06 browser-use-webui-1 | 10/02/2025 14:42:06 TOTALS : 0 | 0/ 0 ( 0.0%)
2025-02-10 22:42:06 browser-use-webui-1 |
2025-02-10 22:42:06 browser-use-webui-1 | 2025-02-10 14:42:06,899 DEBG 'x11vnc_log' stdout output:
2025-02-10 22:42:06 browser-use-webui-1 | 10/02/2025 14:42:06 Got connection from client 127.0.0.1
2025-02-10 22:42:06 browser-use-webui-1 | 10/02/2025 14:42:06 1 other clients
2025-02-10 22:42:06 browser-use-webui-1 | 10/02/2025 14:42:06 webSocketsHandshake: unknown connection error
2025-02-10 22:42:06 browser-use-webui-1 | 10/02/2025 14:42:06 Client 127.0.0.1 gone
2025-02-10 22:42:06 browser-use-webui-1 | 10/02/2025 14:42:06 Statistics events Transmit/ RawEquiv ( saved)
2025-02-10 22:42:06 browser-use-webui-1 | 10/02/2025 14:42:06 TOTALS : 0 | 0/ 0 ( 0.0%)
2025-02-10 22:42:06 browser-use-webui-1 | 10/02/2025 14:42:06 Statistics events Received/ RawEquiv ( saved)
2025-02-10 22:42:06 browser-use-webui-1 | 10/02/2025 14:42:06 TOTALS : 0 | 0/ 0 ( 0.0%)
2025-02-10 22:42:06 browser-use-webui-1 |
2025-02-10 22:42:06 browser-use-webui-1 | INFO [src.browser.custom_browser] Reusing existing Chrome instance
2025-02-10 22:42:06 browser-use-webui-1 | 2025-02-10 14:42:06,997 DEBG 'webui' stdout output:
2025-02-10 22:42:06 browser-use-webui-1 | INFO [src.browser.custom_browser] Reusing existing Chrome instance
2025-02-10 22:42:06 browser-use-webui-1 |
2025-02-10 22:42:06 browser-use-webui-1 | 2025-02-10 14:42:06,997 DEBG 'webui' stdout output:
2025-02-10 22:42:06 browser-use-webui-1 | INFO [src.browser.custom_browser] Reusing existing Chrome instance
2025-02-10 22:42:06 browser-use-webui-1 |
2025-02-10 22:42:07 browser-use-webui-1 | [14:100:0210/144207.329154:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:07 browser-use-webui-1 | 2025-02-10 14:42:07,329 DEBG 'persistent_browser' stderr output:
2025-02-10 22:42:07 browser-use-webui-1 | [14:100:0210/144207.329154:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:07 browser-use-webui-1 | [14:100:0210/144207.329183:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:07 browser-use-webui-1 | [14:100:0210/144207.329188:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:07 browser-use-webui-1 |
2025-02-10 22:42:07 browser-use-webui-1 | 2025-02-10 14:42:07,329 DEBG 'persistent_browser' stderr output:
2025-02-10 22:42:07 browser-use-webui-1 | [14:100:0210/144207.329154:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:07 browser-use-webui-1 | [14:100:0210/144207.329183:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:07 browser-use-webui-1 | [14:100:0210/144207.329188:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:07 browser-use-webui-1 |
2025-02-10 22:42:07 browser-use-webui-1 | [14:100:0210/144207.329183:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:07 browser-use-webui-1 | [14:100:0210/144207.329188:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:07 browser-use-webui-1 | [14:100:0210/144207.330648:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:07 browser-use-webui-1 | 2025-02-10 14:42:07,330 DEBG 'persistent_browser' stderr output:
2025-02-10 22:42:07 browser-use-webui-1 | [14:100:0210/144207.330648:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:07 browser-use-webui-1 | [14:100:0210/144207.330704:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:07 browser-use-webui-1 | [14:100:0210/144207.330715:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:07 browser-use-webui-1 |
2025-02-10 22:42:07 browser-use-webui-1 | 2025-02-10 14:42:07,330 DEBG 'persistent_browser' stderr output:
2025-02-10 22:42:07 browser-use-webui-1 | [14:100:0210/144207.330648:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:07 browser-use-webui-1 | [14:100:0210/144207.330704:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:07 browser-use-webui-1 | [14:100:0210/144207.330715:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:07 browser-use-webui-1 |
2025-02-10 22:42:07 browser-use-webui-1 | [14:100:0210/144207.330704:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:07 browser-use-webui-1 | [14:100:0210/144207.330715:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:08 browser-use-webui-1 | [14:100:0210/144208.460149:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:08 browser-use-webui-1 | [14:100:0210/144208.460177:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:08 browser-use-webui-1 | [14:100:0210/144208.460182:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:08 browser-use-webui-1 | 2025-02-10 14:42:08,460 DEBG 'persistent_browser' stderr output:
2025-02-10 22:42:08 browser-use-webui-1 | [14:100:0210/144208.460149:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:08 browser-use-webui-1 | [14:100:0210/144208.460177:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:08 browser-use-webui-1 | [14:100:0210/144208.460182:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:08 browser-use-webui-1 |
2025-02-10 22:42:08 browser-use-webui-1 | 2025-02-10 14:42:08,460 DEBG 'persistent_browser' stderr output:
2025-02-10 22:42:08 browser-use-webui-1 | [14:100:0210/144208.460149:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:08 browser-use-webui-1 | [14:100:0210/144208.460177:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:08 browser-use-webui-1 | [14:100:0210/144208.460182:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:08 browser-use-webui-1 |
2025-02-10 22:42:08 browser-use-webui-1 | INFO [src.agent.custom_agent]
2025-02-10 22:42:08 browser-use-webui-1 | 📍 Step 1
2025-02-10 22:42:08 browser-use-webui-1 | 2025-02-10 14:42:08,581 DEBG 'webui' stdout output:
2025-02-10 22:42:08 browser-use-webui-1 | INFO [src.agent.custom_agent]
2025-02-10 22:42:08 browser-use-webui-1 | 📍 Step 1
2025-02-10 22:42:08 browser-use-webui-1 |
2025-02-10 22:42:08 browser-use-webui-1 | 2025-02-10 14:42:08,581 DEBG 'webui' stdout output:
2025-02-10 22:42:08 browser-use-webui-1 | INFO [src.agent.custom_agent]
2025-02-10 22:42:08 browser-use-webui-1 | 📍 Step 1
2025-02-10 22:42:08 browser-use-webui-1 |
2025-02-10 22:42:09 browser-use-webui-1 | 2025-02-10 14:42:09,618 DEBG 'persistent_browser' stderr output:
2025-02-10 22:42:09 browser-use-webui-1 | [14:100:0210/144209.618677:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:09 browser-use-webui-1 | [14:100:0210/144209.618701:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:09 browser-use-webui-1 | [14:100:0210/144209.618706:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:09 browser-use-webui-1 |
2025-02-10 22:42:09 browser-use-webui-1 | 2025-02-10 14:42:09,618 DEBG 'persistent_browser' stderr output:
2025-02-10 22:42:09 browser-use-webui-1 | [14:100:0210/144209.618677:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:09 browser-use-webui-1 | [14:100:0210/144209.618701:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:09 browser-use-webui-1 | [14:100:0210/144209.618706:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:09 browser-use-webui-1 |
2025-02-10 22:42:09 browser-use-webui-1 | [14:100:0210/144209.618677:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:09 browser-use-webui-1 | [14:100:0210/144209.618701:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:09 browser-use-webui-1 | [14:100:0210/144209.618706:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2025-02-10 22:42:09 browser-use-webui-1 | ERROR [agent] ❌ Result failed 1/5 times:
2025-02-10 22:42:09 browser-use-webui-1 | [Errno 111] Connection refused
2025-02-10 22:42:09 browser-use-webui-1 | 2025-02-10 14:42:09,730 DEBG 'webui' stdout output:
2025-02-10 22:42:09 browser-use-webui-1 | ERROR [agent] ❌ Result failed 1/5 times:
2025-02-10 22:42:09 browser-use-webui-1 | [Errno 111] Connection refused

@jerryshao2012
Copy link

Any solutions?

@kishorevaishnav
Copy link

I am also facing the same kind of issues on my Mac.
@jerryshao2012 / @cngitlt Just curious - did you updated the .env file ? Also is the Ollama / OpenWebUI is running in Docker or on host machine?

@jerryshao2012
Copy link

Host machine doesn't have any issues. Docker has the websocket communication issue

@windbd
Copy link

windbd commented Feb 20, 2025

browser-use-webui-1 | 2025-02-20 09:36:38,658 DEBG 'persistent_browser' stderr output:
browser-use-webui-1 | [12:96:0220/093638.658045:ERROR:registration_request.cc(291)] Registration response error message: DEPRECATED_ENDPOINT
browser-use-webui-1 |
browser-use-webui-1 | 2025-02-20 09:36:38,658 DEBG 'persistent_browser' stderr output:
browser-use-webui-1 | [12:96:0220/093638.658045:ERROR:registration_request.cc(291)] Registration response error message: DEPRECATED_ENDPOINT
browser-use-webui-1 |
browser-use-webui-1 | [12:96:0220/093638.658045:ERROR:registration_request.cc(291)] Registration response error message: DEPRECATED_ENDPOINT
browser-use-webui-1 | 20/02/2025 09:36:38 Got connection from client 127.0.0.1
browser-use-webui-1 | 20/02/2025 09:36:38 0 other clients
browser-use-webui-1 | 20/02/2025 09:36:38 webSocketsHandshake: unknown connection error
browser-use-webui-1 | 20/02/2025 09:36:38 Client 127.0.0.1 gone
browser-use-webui-1 | 20/02/2025 09:36:38 Statistics events Transmit/ RawEquiv ( saved)
browser-use-webui-1 | 20/02/2025 09:36:38 TOTALS : 0 | 0/ 0 ( 0.0%)
browser-use-webui-1 | 20/02/2025 09:36:38 Statistics events Received/ RawEquiv ( saved)
browser-use-webui-1 | 20/02/2025 09:36:38 TOTALS : 0 | 0/ 0 ( 0.0%)

I also face same problems, when i use docker deploy WebAgent in windows

@aman79000
Copy link

Anyone find the solution yet?

@Maddox-Werts
Copy link

Maddox-Werts commented Mar 10, 2025

Hey everyone! I'm using the docker setup with my Browser-Use connecting to an OLLAMA instance that is not running locally. I had the same error logs that I see here, but I found a slight work around to this.

I was reading the logs and this one caught my eye

browser-use-webui-1 | 2025-02-20 09:36:38,658 DEBG 'persistent_browser' stderr output

Here are the settings I used to make it work:

  • Agent Type: Custom
  • LLM Config: Ollama, set a model you want, re-enter the URL even if it's set in .env
  • Use Own Browser: Off
  • Keep Browser Open between Tasks: On

@furkankurtoglu
Copy link

I have the same problem

@aman79000
Copy link

As far as i understand stand its only happening when we are running models locally. I was running ollama with deepseek i was also seeing the same issue.Once i change the model to use Gemini it stared to work

@AliYmn
Copy link
Contributor

AliYmn commented Mar 14, 2025

@furkankurtoglu @cngitlt
If you're working with Ollama, you should update the OLLAMA_ENDPOINT to "http://host.docker.internal:11434" in your .env file. This allows the Docker container to communicate with the Ollama application running on your host machine, as "localhost" inside a container refers to the container itself, not your computer.

also I made pr about this issue : #399

@dexteon
Copy link

dexteon commented Mar 17, 2025

I made this change in .env OLLAMA_ENDPOINT="http://host.docker.internal:11434" then I ran docker compose build (then up) but im not seeing a change?

browser-use-webui-1  | [16:16:0317/193255.773404:ERROR:fm_registration_token_uploader.cc(186)] Client is missing for kUser scope
browser-use-webui-1  | 2025-03-17 19:32:55,773 DEBG 'persistent_browser' stderr output:
browser-use-webui-1  | [16:16:0317/193255.773404:ERROR:fm_registration_token_uploader.cc(186)] Client is missing for kUser scope
browser-use-webui-1  |
browser-use-webui-1  | 2025-03-17 19:32:55,773 DEBG 'persistent_browser' stderr output:
browser-use-webui-1  | [16:16:0317/193255.773404:ERROR:fm_registration_token_uploader.cc(186)] Client is missing for kUser scope
browser-use-webui-1  |
browser-use-webui-1  | 2025-03-17 19:32:56,829 DEBG 'persistent_browser' stderr output:
browser-use-webui-1  | [16:78:0317/193256.829228:ERROR:registration_request.cc(291)] Registration response error message: DEPRECATED_ENDPOINT
browser-use-webui-1  |
browser-use-webui-1  | 2025-03-17 19:32:56,829 DEBG 'persistent_browser' stderr output:
browser-use-webui-1  | [16:78:0317/193256.829228:ERROR:registration_request.cc(291)] Registration response error message: DEPRECATED_ENDPOINT
browser-use-webui-1  |
browser-use-webui-1  | [16:78:0317/193256.829228:ERROR:registration_request.cc(291)] Registration response error message: DEPRECATED_ENDPOINT
browser-use-webui-1  | 17/03/2025 19:32:59 Got connection from client 127.0.0.1
browser-use-webui-1  | 17/03/2025 19:32:59   0 other clients
browser-use-webui-1  | 17/03/2025 19:32:59 webSocketsHandshake: unknown connection error
browser-use-webui-1  | 17/03/2025 19:32:59 Client 127.0.0.1 gone
browser-use-webui-1  | 17/03/2025 19:32:59 Statistics             events    Transmit/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:32:59  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 17/03/2025 19:32:59 Statistics             events    Received/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:32:59  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 2025-03-17 19:32:59,795 DEBG 'x11vnc_log' stdout output:
browser-use-webui-1  | 17/03/2025 19:32:59 Got connection from client 127.0.0.1
browser-use-webui-1  | 17/03/2025 19:32:59   0 other clients
browser-use-webui-1  | 17/03/2025 19:32:59 webSocketsHandshake: unknown connection error
browser-use-webui-1  | 17/03/2025 19:32:59 Client 127.0.0.1 gone
browser-use-webui-1  | 17/03/2025 19:32:59 Statistics             events    Transmit/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:32:59  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 17/03/2025 19:32:59 Statistics             events    Received/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:32:59  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  |
browser-use-webui-1  | 2025-03-17 19:32:59,795 DEBG 'x11vnc_log' stdout output:
browser-use-webui-1  | 17/03/2025 19:32:59 Got connection from client 127.0.0.1
browser-use-webui-1  | 17/03/2025 19:32:59   0 other clients
browser-use-webui-1  | 17/03/2025 19:32:59 webSocketsHandshake: unknown connection error
browser-use-webui-1  | 17/03/2025 19:32:59 Client 127.0.0.1 gone
browser-use-webui-1  | 17/03/2025 19:32:59 Statistics             events    Transmit/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:32:59  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 17/03/2025 19:32:59 Statistics             events    Received/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:32:59  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  |
browser-use-webui-1  | 17/03/2025 19:33:09 Got connection from client 127.0.0.1
browser-use-webui-1  | 17/03/2025 19:33:09   0 other clients
browser-use-webui-1  | 17/03/2025 19:33:09 webSocketsHandshake: unknown connection error
browser-use-webui-1  | 17/03/2025 19:33:09 Client 127.0.0.1 gone
browser-use-webui-1  | 17/03/2025 19:33:09 Statistics             events    Transmit/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:33:09  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 17/03/2025 19:33:09 Statistics             events    Received/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:33:09  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 2025-03-17 19:33:09,796 DEBG 'x11vnc_log' stdout output:
browser-use-webui-1  | 17/03/2025 19:33:09 Got connection from client 127.0.0.1
browser-use-webui-1  | 17/03/2025 19:33:09   0 other clients
browser-use-webui-1  | 17/03/2025 19:33:09 webSocketsHandshake: unknown connection error
browser-use-webui-1  | 17/03/2025 19:33:09 Client 127.0.0.1 gone
browser-use-webui-1  | 17/03/2025 19:33:09 Statistics             events    Transmit/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:33:09  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 17/03/2025 19:33:09 Statistics             events    Received/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:33:09  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  |
browser-use-webui-1  | 2025-03-17 19:33:09,796 DEBG 'x11vnc_log' stdout output:
browser-use-webui-1  | 17/03/2025 19:33:09 Got connection from client 127.0.0.1
browser-use-webui-1  | 17/03/2025 19:33:09   0 other clients
browser-use-webui-1  | 17/03/2025 19:33:09 webSocketsHandshake: unknown connection error
browser-use-webui-1  | 17/03/2025 19:33:09 Client 127.0.0.1 gone
browser-use-webui-1  | 17/03/2025 19:33:09 Statistics             events    Transmit/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:33:09  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 17/03/2025 19:33:09 Statistics             events    Received/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:33:09  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  |
browser-use-webui-1  | 17/03/2025 19:33:19 Got connection from client 127.0.0.1
browser-use-webui-1  | 17/03/2025 19:33:19   0 other clients
browser-use-webui-1  | 17/03/2025 19:33:19 webSocketsHandshake: unknown connection error
browser-use-webui-1  | 17/03/2025 19:33:19 Client 127.0.0.1 gone
browser-use-webui-1  | 17/03/2025 19:33:19 Statistics             events    Transmit/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:33:19  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 17/03/2025 19:33:19 Statistics             events    Received/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:33:19  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 2025-03-17 19:33:19,797 DEBG 'x11vnc_log' stdout output:
browser-use-webui-1  | 17/03/2025 19:33:19 Got connection from client 127.0.0.1
browser-use-webui-1  | 17/03/2025 19:33:19   0 other clients
browser-use-webui-1  | 17/03/2025 19:33:19 webSocketsHandshake: unknown connection error
browser-use-webui-1  | 17/03/2025 19:33:19 Client 127.0.0.1 gone
browser-use-webui-1  | 17/03/2025 19:33:19 Statistics             events    Transmit/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:33:19  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 17/03/2025 19:33:19 Statistics             events    Received/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:33:19  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  |
browser-use-webui-1  | 2025-03-17 19:33:19,797 DEBG 'x11vnc_log' stdout output:
browser-use-webui-1  | 17/03/2025 19:33:19 Got connection from client 127.0.0.1
browser-use-webui-1  | 17/03/2025 19:33:19   0 other clients
browser-use-webui-1  | 17/03/2025 19:33:19 webSocketsHandshake: unknown connection error
browser-use-webui-1  | 17/03/2025 19:33:19 Client 127.0.0.1 gone
browser-use-webui-1  | 17/03/2025 19:33:19 Statistics             events    Transmit/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:33:19  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 17/03/2025 19:33:19 Statistics             events    Received/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:33:19  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  |
browser-use-webui-1  | 17/03/2025 19:33:29 Got connection from client 127.0.0.1
browser-use-webui-1  | 17/03/2025 19:33:29   0 other clients
browser-use-webui-1  | 17/03/2025 19:33:29 webSocketsHandshake: unknown connection error
browser-use-webui-1  | 17/03/2025 19:33:29 Client 127.0.0.1 gone
browser-use-webui-1  | 17/03/2025 19:33:29 Statistics             events    Transmit/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:33:29  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 17/03/2025 19:33:29 Statistics             events    Received/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:33:29  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 2025-03-17 19:33:30,690 DEBG 'x11vnc_log' stdout output:
browser-use-webui-1  | 17/03/2025 19:33:29 Got connection from client 127.0.0.1
browser-use-webui-1  | 17/03/2025 19:33:29   0 other clients
browser-use-webui-1  | 17/03/2025 19:33:29 webSocketsHandshake: unknown connection error
browser-use-webui-1  | 17/03/2025 19:33:29 Client 127.0.0.1 gone
browser-use-webui-1  | 17/03/2025 19:33:29 Statistics             events    Transmit/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:33:29  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 17/03/2025 19:33:29 Statistics             events    Received/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:33:29  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  |
browser-use-webui-1  | 2025-03-17 19:33:30,690 DEBG 'x11vnc_log' stdout output:
browser-use-webui-1  | 17/03/2025 19:33:29 Got connection from client 127.0.0.1
browser-use-webui-1  | 17/03/2025 19:33:29   0 other clients
browser-use-webui-1  | 17/03/2025 19:33:29 webSocketsHandshake: unknown connection error
browser-use-webui-1  | 17/03/2025 19:33:29 Client 127.0.0.1 gone
browser-use-webui-1  | 17/03/2025 19:33:29 Statistics             events    Transmit/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:33:29  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 17/03/2025 19:33:29 Statistics             events    Received/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:33:29  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  |
browser-use-webui-1  | 17/03/2025 19:33:40 Got connection from client 127.0.0.1
browser-use-webui-1  | 17/03/2025 19:33:40   0 other clients
browser-use-webui-1  | 17/03/2025 19:33:40 webSocketsHandshake: unknown connection error
browser-use-webui-1  | 17/03/2025 19:33:40 Client 127.0.0.1 gone
browser-use-webui-1  | 17/03/2025 19:33:40 Statistics             events    Transmit/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:33:40  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 17/03/2025 19:33:40 Statistics             events    Received/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:33:40  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 2025-03-17 19:33:40,691 DEBG 'x11vnc_log' stdout output:
browser-use-webui-1  | 17/03/2025 19:33:40 Got connection from client 127.0.0.1
browser-use-webui-1  | 17/03/2025 19:33:40   0 other clients
browser-use-webui-1  | 17/03/2025 19:33:40 webSocketsHandshake: unknown connection error
browser-use-webui-1  | 17/03/2025 19:33:40 Client 127.0.0.1 gone
browser-use-webui-1  | 17/03/2025 19:33:40 Statistics             events    Transmit/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:33:40  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 17/03/2025 19:33:40 Statistics             events    Received/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:33:40  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  |
browser-use-webui-1  | 2025-03-17 19:33:40,691 DEBG 'x11vnc_log' stdout output:
browser-use-webui-1  | 17/03/2025 19:33:40 Got connection from client 127.0.0.1
browser-use-webui-1  | 17/03/2025 19:33:40   0 other clients
browser-use-webui-1  | 17/03/2025 19:33:40 webSocketsHandshake: unknown connection error
browser-use-webui-1  | 17/03/2025 19:33:40 Client 127.0.0.1 gone
browser-use-webui-1  | 17/03/2025 19:33:40 Statistics             events    Transmit/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:33:40  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 17/03/2025 19:33:40 Statistics             events    Received/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:33:40  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  |
browser-use-webui-1  | 17/03/2025 19:33:50 Got connection from client 127.0.0.1
browser-use-webui-1  | 17/03/2025 19:33:50   0 other clients
browser-use-webui-1  | 17/03/2025 19:33:50 webSocketsHandshake: unknown connection error
browser-use-webui-1  | 17/03/2025 19:33:50 Client 127.0.0.1 gone
browser-use-webui-1  | 17/03/2025 19:33:50 Statistics             events    Transmit/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:33:50  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 17/03/2025 19:33:50 Statistics             events    Received/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:33:50  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 2025-03-17 19:33:50,692 DEBG 'x11vnc_log' stdout output:
browser-use-webui-1  | 17/03/2025 19:33:50 Got connection from client 127.0.0.1
browser-use-webui-1  | 17/03/2025 19:33:50   0 other clients
browser-use-webui-1  | 17/03/2025 19:33:50 webSocketsHandshake: unknown connection error
browser-use-webui-1  | 17/03/2025 19:33:50 Client 127.0.0.1 gone
browser-use-webui-1  | 17/03/2025 19:33:50 Statistics             events    Transmit/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:33:50  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 17/03/2025 19:33:50 Statistics             events    Received/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:33:50  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  |
browser-use-webui-1  | 2025-03-17 19:33:50,692 DEBG 'x11vnc_log' stdout output:
browser-use-webui-1  | 17/03/2025 19:33:50 Got connection from client 127.0.0.1
browser-use-webui-1  | 17/03/2025 19:33:50   0 other clients
browser-use-webui-1  | 17/03/2025 19:33:50 webSocketsHandshake: unknown connection error
browser-use-webui-1  | 17/03/2025 19:33:50 Client 127.0.0.1 gone
browser-use-webui-1  | 17/03/2025 19:33:50 Statistics             events    Transmit/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:33:50  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 17/03/2025 19:33:50 Statistics             events    Received/ RawEquiv ( saved)
browser-use-webui-1  | 17/03/2025 19:33:50  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  |
browser-use-webui-1  | 2025-03-17 19:33:54,588 DEBG 'persistent_browser' stderr output:
browser-use-webui-1  | [16:78:0317/193354.588592:ERROR:registration_request.cc(291)] Registration response error message: DEPRECATED_ENDPOINT
browser-use-webui-1  |
browser-use-webui-1  | 2025-03-17 19:33:54,588 DEBG 'persistent_browser' stderr output:
browser-use-webui-1  | [16:78:0317/193354.588592:ERROR:registration_request.cc(291)] Registration response error message: DEPRECATED_ENDPOINT
browser-use-webui-1  |
browser-use-webui-1  | [16:78:0317/193354.588592:ERROR:registration_request.cc(291)] Registration response error message: DEPRECATED_ENDPOINT
browser-use-webui-1  | 17/03/2025 19:34:00 Got connection from client 127.0.0.1```

@dexteon
Copy link

dexteon commented Mar 17, 2025

My .env file if it helps.

OPENAI_API_KEY=<shouldIRemoveThisIfImUsingOllama?>

ANTHROPIC_ENDPOINT=https://api.anthropic.com

AZURE_OPENAI_ENDPOINT=
AZURE_OPENAI_API_KEY=
AZURE_OPENAI_API_VERSION=2025-01-01-preview

DEEPSEEK_ENDPOINT=https://api.deepseek.com
DEEPSEEK_API_KEY=

MISTRAL_ENDPOINT=https://api.mistral.ai/v1

OLLAMA_ENDPOINT="http://host.docker.internal:11434"

ALIBABA_ENDPOINT=https://dashscope.aliyuncs.com/compatible-mode/v1
ALIBABA_API_KEY=

MOONSHOT_ENDPOINT=https://api.moonshot.cn/v1
MOONSHOT_API_KEY=

# Set to false to disable anonymized telemetry
ANONYMIZED_TELEMETRY=false

# LogLevel: Set to debug to enable verbose logging, set to result to get results only. Available: result | debug | info
BROWSER_USE_LOGGING_LEVEL=debug

# Chrome settings
CHROME_PATH="C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe"
CHROME_USER_DATA="C:\\Users\\<me>\\AppData\\Local\\Google\\Chrome\\User Data\\"
CHROME_DEBUGGING_PORT=9222
CHROME_DEBUGGING_HOST=localhost

# Set to true to keep browser open between AI tasks
CHROME_PERSISTENT_SESSION=true

# Display settings
# Format: WIDTHxHEIGHTxDEPTH
RESOLUTION=1920x1080x24
# Width in pixels
RESOLUTION_WIDTH=1920
# Height in pixels
RESOLUTION_HEIGHT=1080

# VNC settings
VNC_PASSWORD=NUNYA

@bruffridge
Copy link

I'm also getting these types of errors running on Docker Desktop on Mac. I tried to parse through the logs and only shown below are what appear to be ERRORS not just debugging messages.

It actually runs, and I can connect to the VNC to see the browser, but when I run the default 'Run Agent' prompt, it never gives a result in the gradio website, even though I can see through VNC that the browser did search google for 'OpenAI' and find the first URL.

browser-use-webui-1  | 2025-03-21 17:00:56,172 DEBG 'novnc' stdout output:
browser-use-webui-1  | Warning: could not find self.pem



browser-use-webui-1  | 21/03/2025 17:00:56 X FBPM extension not supported.
browser-use-webui-1  | Xlib:  extension "DPMS" missing on display ":99".
browser-use-webui-1  | 21/03/2025 17:00:56 X display is not capable of DPMS.


browser-use-webui-1  | 2025-03-21 17:00:59,247 DEBG 'persistent_browser' stderr output:
browser-use-webui-1  | [14:84:0321/170059.247017:ERROR:bus.cc(408)] Failed to connect to the bus: Failed to connect to socket /run/dbus/system_bus_socket: No such file or directory


browser-use-webui-1  | [14:84:0321/170059.379984:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")


browser-use-webui-1  | 2025-03-21 17:00:59,380 DEBG 'persistent_browser' stderr output:
browser-use-webui-1  | [14:84:0321/170059.379984:ERROR:bus.cc(408)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")

browser-use-webui-1  | 2025-03-21 17:00:59,638 DEBG 'persistent_browser' stderr output:
browser-use-webui-1  | [14:14:0321/170059.638455:ERROR:object_proxy.cc(576)] Failed to call method: org.freedesktop.DBus.NameHasOwner: object_path= /org/freedesktop/DBus: unknown error type: 

browser-use-webui-1  | 21/03/2025 17:01:00 Got connection from client 127.0.0.1
browser-use-webui-1  | 21/03/2025 17:01:00   0 other clients
browser-use-webui-1  | 21/03/2025 17:01:00 webSocketsHandshake: unknown connection error
browser-use-webui-1  | 21/03/2025 17:01:00 Client 127.0.0.1 gone
browser-use-webui-1  | 21/03/2025 17:01:00 Statistics             events    Transmit/ RawEquiv ( saved)
browser-use-webui-1  | 21/03/2025 17:01:00  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 21/03/2025 17:01:00 Statistics             events    Received/ RawEquiv ( saved)
browser-use-webui-1  | 21/03/2025 17:01:00  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 2025-03-21 17:01:01,186 DEBG 'x11vnc_log' stdout output:
browser-use-webui-1  | 21/03/2025 17:01:00 Got connection from client 127.0.0.1
browser-use-webui-1  | 21/03/2025 17:01:00   0 other clients
browser-use-webui-1  | 21/03/2025 17:01:00 webSocketsHandshake: unknown connection error
browser-use-webui-1  | 21/03/2025 17:01:00 Client 127.0.0.1 gone
browser-use-webui-1  | 21/03/2025 17:01:00 Statistics             events    Transmit/ RawEquiv ( saved)
browser-use-webui-1  | 21/03/2025 17:01:00  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 21/03/2025 17:01:00 Statistics             events    Received/ RawEquiv ( saved)
browser-use-webui-1  | 21/03/2025 17:01:00  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 
browser-use-webui-1  | 2025-03-21 17:01:01,186 DEBG 'x11vnc_log' stdout output:
browser-use-webui-1  | 21/03/2025 17:01:00 Got connection from client 127.0.0.1
browser-use-webui-1  | 21/03/2025 17:01:00   0 other clients
browser-use-webui-1  | 21/03/2025 17:01:00 webSocketsHandshake: unknown connection error
browser-use-webui-1  | 21/03/2025 17:01:00 Client 127.0.0.1 gone
browser-use-webui-1  | 21/03/2025 17:01:00 Statistics             events    Transmit/ RawEquiv ( saved)
browser-use-webui-1  | 21/03/2025 17:01:00  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 21/03/2025 17:01:00 Statistics             events    Received/ RawEquiv ( saved)
browser-use-webui-1  | 21/03/2025 17:01:00  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 
browser-use-webui-1  | 2025-03-21 17:01:01,186 INFO success: x11vnc entered RUNNING state, process has stayed up for > than 10 seconds (startsecs)
browser-use-webui-1  | 2025-03-21 17:01:01,186 INFO success: x11vnc entered RUNNING state, process has stayed up for > than 10 seconds (startsecs)
browser-use-webui-1  | 2025-03-21 17:01:01,186 INFO success: persistent_browser entered RUNNING state, process has stayed up for > than 10 seconds (startsecs)
browser-use-webui-1  | 2025-03-21 17:01:01,186 INFO success: persistent_browser entered RUNNING state, process has stayed up for > than 10 seconds (startsecs)
browser-use-webui-1  | [14:85:0321/170105.105646:ERROR:connection_factory_impl.cc(434)] Failed to connect to MCS endpoint with error -102
browser-use-webui-1  | 2025-03-21 17:01:05,105 DEBG 'persistent_browser' stderr output:
browser-use-webui-1  | [14:85:0321/170105.105646:ERROR:connection_factory_impl.cc(434)] Failed to connect to MCS endpoint with error -102
browser-use-webui-1  | 
browser-use-webui-1  | 2025-03-21 17:01:05,105 DEBG 'persistent_browser' stderr output:
browser-use-webui-1  | [14:85:0321/170105.105646:ERROR:connection_factory_impl.cc(434)] Failed to connect to MCS endpoint with error -102
browser-use-webui-1  | 
browser-use-webui-1  | 2025-03-21 17:01:05,145 DEBG 'persistent_browser' stderr output:
browser-use-webui-1  | [14:85:0321/170105.145395:ERROR:registration_request.cc(291)] Registration response error message: DEPRECATED_ENDPOINT
browser-use-webui-1  | 
browser-use-webui-1  | 2025-03-21 17:01:05,145 DEBG 'persistent_browser' stderr output:
browser-use-webui-1  | [14:85:0321/170105.145395:ERROR:registration_request.cc(291)] Registration response error message: DEPRECATED_ENDPOINT
browser-use-webui-1  | 
browser-use-webui-1  | [14:85:0321/170105.145395:ERROR:registration_request.cc(291)] Registration response error message: DEPRECATED_ENDPOINT
browser-use-webui-1  | 2025-03-21 17:01:05,717 DEBG 'persistent_browser' stderr output:
browser-use-webui-1  | [14:14:0321/170105.717115:ERROR:fm_registration_token_uploader.cc(183)] Client is missing for kUser scope
browser-use-webui-1  | 
browser-use-webui-1  | 2025-03-21 17:01:05,717 DEBG 'persistent_browser' stderr output:
browser-use-webui-1  | [14:14:0321/170105.717115:ERROR:fm_registration_token_uploader.cc(183)] Client is missing for kUser scope
browser-use-webui-1  | 
browser-use-webui-1  | [14:14:0321/170105.717115:ERROR:fm_registration_token_uploader.cc(183)] Client is missing for kUser scope
browser-use-webui-1  | [14:14:0321/170106.120795:ERROR:fm_registration_token_uploader.cc(183)] Client is missing for kUser scope
browser-use-webui-1  | 2025-03-21 17:01:06,121 DEBG 'persistent_browser' stderr output:
browser-use-webui-1  | [14:14:0321/170106.120795:ERROR:fm_registration_token_uploader.cc(183)] Client is missing for kUser scope
browser-use-webui-1  | 
browser-use-webui-1  | 2025-03-21 17:01:06,121 DEBG 'persistent_browser' stderr output:
browser-use-webui-1  | [14:14:0321/170106.120795:ERROR:fm_registration_token_uploader.cc(183)] Client is missing for kUser scope


browser-use-webui-1  | 21/03/2025 17:01:10 Got connection from client 127.0.0.1
browser-use-webui-1  | 21/03/2025 17:01:10   0 other clients
browser-use-webui-1  | 21/03/2025 17:01:10 webSocketsHandshake: unknown connection error
browser-use-webui-1  | 21/03/2025 17:01:10 Client 127.0.0.1 gone
browser-use-webui-1  | 21/03/2025 17:01:10 Statistics             events    Transmit/ RawEquiv ( saved)
browser-use-webui-1  | 21/03/2025 17:01:10  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 21/03/2025 17:01:10 Statistics             events    Received/ RawEquiv ( saved)
browser-use-webui-1  | 21/03/2025 17:01:10  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 2025-03-21 17:01:11,196 DEBG 'x11vnc_log' stdout output:
browser-use-webui-1  | 21/03/2025 17:01:10 Got connection from client 127.0.0.1
browser-use-webui-1  | 21/03/2025 17:01:10   0 other clients
browser-use-webui-1  | 21/03/2025 17:01:10 webSocketsHandshake: unknown connection error
browser-use-webui-1  | 21/03/2025 17:01:10 Client 127.0.0.1 gone
browser-use-webui-1  | 21/03/2025 17:01:10 Statistics             events    Transmit/ RawEquiv ( saved)
browser-use-webui-1  | 21/03/2025 17:01:10  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 21/03/2025 17:01:10 Statistics             events    Received/ RawEquiv ( saved)
browser-use-webui-1  | 21/03/2025 17:01:10  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 
browser-use-webui-1  | 2025-03-21 17:01:11,196 DEBG 'x11vnc_log' stdout output:
browser-use-webui-1  | 21/03/2025 17:01:10 Got connection from client 127.0.0.1
browser-use-webui-1  | 21/03/2025 17:01:10   0 other clients
browser-use-webui-1  | 21/03/2025 17:01:10 webSocketsHandshake: unknown connection error
browser-use-webui-1  | 21/03/2025 17:01:10 Client 127.0.0.1 gone
browser-use-webui-1  | 21/03/2025 17:01:10 Statistics             events    Transmit/ RawEquiv ( saved)
browser-use-webui-1  | 21/03/2025 17:01:10  TOTALS              :      0 |         0/        0 (  0.0%)
browser-use-webui-1  | 21/03/2025 17:01:10 Statistics             events    Received/ RawEquiv ( saved)
browser-use-webui-1  | 21/03/2025 17:01:10  TOTALS              :      0 |         0/        0 (  0.0%)

@bruffridge
Copy link

Here's what Gemini 2.0 Flash Thinking (Deep Research mode) had to say.

Troubleshooting WebUI Docker Container Startup on macOS

Troubleshooting WebUI Docker Container Startup on macOS

This report analyzes the errors encountered while attempting to run the WebUI application within a Docker container on macOS, as indicated by the provided Docker logs and configuration files. The objective is to identify the root causes of these errors and provide detailed, actionable steps for their resolution.

1. Introduction

The user is experiencing difficulties in launching the WebUI application, sourced from the browser-use/web-ui GitHub repository, using Docker Compose on a macOS environment. The Docker logs provided reveal a series of errors occurring within the browser-use-webui-1 container. This report will systematically examine each error message in the order it appears, leveraging the provided configuration files (Dockerfile, docker-compose.yml, and supervisord.conf) and external research to determine the underlying causes and propose effective solutions. The analysis will cover components such as Docker Desktop, Docker Compose, the WebUI application itself, the noVNC web-based VNC client, the X server (Xvfb), the D-Bus inter-process communication system, and the persistent browser (likely Chromium) used within the container.

2. Detailed Analysis of Docker Logs and Resolutions

  • 2.1. "Warning: could not find self.pem" (novnc)
    • Data Point: The initial log entry from the novnc service is a warning: "could not find self.pem".
    • Context and Background: The self.pem file is conventionally used by the websockify component, which underlies noVNC, to establish encrypted WebSocket connections (wss://) via TLS/SSL 1. This encryption secures the communication between the user's web browser and the noVNC proxy, protecting sensitive data transmitted during the remote session. Research indicates that this file should contain both the private key and the certificate for the TLS/SSL encryption 1.
    • Cause of the Error: The warning signifies that noVNC is either configured to use or is attempting to use TLS/SSL for its web interface and WebSocket proxy but cannot locate the necessary certificate file, self.pem, in its expected location, which is typically the root directory of the noVNC installation (/opt/novnc/ in this case, based on the novnc command in supervisord.conf). This absence could be due to the file not being generated, not being included in the Docker image during the build process, or being placed in an incorrect directory.
    • Resolution Steps:
      1. Generate a self-signed certificate: If a self.pem file does not exist, it needs to be generated. This can be done using the openssl command. On the host machine, navigate to a suitable directory and execute: openssl req -new -x509 -days 365 -nodes -out self.pem -keyout self.pem 3. When prompted for details, the "Common Name" should be the hostname or IP address used to access the WebUI, such as localhost.
      2. Include self.pem in the Docker image: To make the certificate available to the noVNC service within the container, the Dockerfile needs to be modified to copy the generated self.pem file into the /opt/novnc/ directory. Add the line COPY self.pem /opt/novnc/ after the commands that clone the noVNC repository.
      3. Rebuild the Docker image: After modifying the Dockerfile, rebuild the Docker image using the command docker compose build.
      4. Restart the Docker container: Finally, restart the Docker container with docker compose up -d to apply the changes.
      5. Verification: After restarting, attempt to access the WebUI via https://localhost:6080/vnc.html in a web browser. A warning about an untrusted certificate might appear because it is self-signed. This can usually be accepted for local development. If the warning persists in the Docker logs, verify that the self.pem file is indeed present in the /opt/novnc/ directory inside the running container.
    • Key Takeaway: Addressing this warning by providing a self.pem file will enable secure, encrypted connections to the noVNC interface, which is a recommended security practice and might prevent potential issues with browsers that enforce secure WebSocket connections 2.
  • 2.2. X Server Extension Errors ("FBPM extension not supported", "DPMS missing", "display is not capable of DPMS")
    • Data Point: Following the self.pem warning are errors related to X server extensions: "FBPM extension not supported", "DPMS missing on display ":99"", and "display is not capable of DPMS".
    • Context and Background: These errors originate from the virtual X server, Xvfb, which is configured to run within the Docker container as indicated in the supervisord.conf. FBPM (Frame Buffer Pixel Manipulation) and DPMS (Display Power Management Signaling) are extensions to the X11 protocol. DPMS is concerned with power-saving features for physical monitors, while FBPM allows for direct manipulation of the framebuffer.
    • Cause of the Error: Xvfb is a headless X server, meaning it operates without any physical display hardware. Consequently, it is expected that it would not support extensions like DPMS, which are hardware-dependent. Support for FBPM might also be limited in a virtual framebuffer environment. The error messages indicate that the specific virtual X server instance running on display :99 does not have the capabilities for these extensions.
    • Resolution Steps:
      1. Ignore the errors: These errors are generally considered benign in the context of running GUI applications in a Docker container using a virtual X server like Xvfb 1. The core functionality of rendering and displaying a web browser remotely via VNC does not typically rely on these specific extensions in a headless setup. These warnings are common in such environments and usually do not impede the application's primary functions.
      2. Optional: Review Xvfb configuration: While it's unlikely to change the support for these particular extensions, the user could review the Xvfb documentation for any relevant configuration options. The current configuration in supervisord.conf already enables GLX and Render extensions, which are more pertinent to graphical rendering. Attempting to force support for FBPM or DPMS in Xvfb is unlikely to succeed and is not necessary for this use case.
    • Key Takeaway: The X server extension errors are not likely to be the cause of the user's inability to connect to the WebUI and can generally be disregarded. They reflect the limitations of a virtualized graphics environment.
  • 2.3. D-Bus Connection Errors (" Failed to connect to the bus", " Failed to call method: org.freedesktop.DBus.NameHasOwner")
    • Data Point: The logs show multiple instances of " Failed to connect to the bus" and " Failed to call method: org.freedesktop.DBus.NameHasOwner" originating from the persistent_browser service.
    • Context and Background: D-Bus is a system for inter-process communication, allowing different applications to send and receive messages from one another. Many modern desktop environments and applications, including Chromium, rely on D-Bus for various functionalities, such as displaying notifications, accessing system settings, and communicating with other desktop services.
    • Cause of the Error: These errors indicate that the persistent_browser (likely Chromium) running within the Docker container is unable to establish a connection to the D-Bus system. This typically happens in Docker environments because containers are isolated and do not inherently have access to the host's D-Bus. While the Dockerfile includes the installation of the dbus package, the D-Bus daemon itself needs to be explicitly started within the container. The supervisord.conf does not contain a service definition for launching the D-Bus daemon.
    • Resolution Steps:
      1. Start the D-Bus daemon: To resolve this, a service definition for the D-Bus daemon needs to be added to the supervisord.conf file. Add the following section:
        Ini, TOML
        [program:dbus]
        command=/usr/bin/dbus-daemon --system --address=unix:path=/run/dbus/system_bus_socket
        autorestart=true
        stdout_logfile=/dev/stdout
        stdout_logfile_maxbytes=0
        stderr_logfile=/dev/stderr
        stderr_logfile_maxbytes=0
        priority=50
        This configuration will instruct supervisord to start the D-Bus system daemon at the specified address. Setting a lower priority (e.g., 50) ensures it starts before services that depend on it.
      2. Ensure the D-Bus socket directory exists: In the Dockerfile, add the following command to create the /run/dbus directory and set appropriate permissions: RUN mkdir -p /run/dbus && chmod 777 /run/dbus. While chmod 777 is overly permissive and not recommended for production, it can help in debugging potential permission issues in this context. A more refined approach would involve identifying the specific user running the browser process and granting them the necessary permissions.
      3. Rebuild and restart: Rebuild the Docker image using docker compose build and then restart the container using docker compose up -d to apply these changes.
    • Key Takeaway: Starting the D-Bus daemon within the container is essential for the proper functioning of Chromium. While the absence of a D-Bus connection might not be the direct cause of the WebSocket handshake failure, it can lead to other issues with the browser's functionality and should be addressed for a robust environment.
  • 2.4. WebSocket Handshake Errors ("webSocketsHandshake: unknown connection error", "Client 127.0.0.1 gone")
    • Data Point: The logs show repeated sequences of "Got connection from client 127.0.0.1", "0 other clients", "webSocketsHandshake: unknown connection error", and "Client 127.0.0.1 gone" originating from both the main container log and the x11vnc_log output.
    • Context and Background: These messages indicate that a client, presumably the user's web browser attempting to connect to the noVNC interface on port 6080, is successfully establishing a TCP connection. However, the subsequent WebSocket handshake, which is necessary for the browser to interact with the VNC server, is failing. Following the failure, the connection is closed, as indicated by the "Client 127.0.0.1 gone" message. The repetition of this sequence suggests the user has likely attempted to connect multiple times.
    • Cause of the Error: The failure of the WebSocket handshake can stem from several potential issues:
      • TLS/SSL Configuration: If the browser is trying to connect via https:// and noVNC is not properly configured with a valid or trusted SSL certificate (as highlighted by the self.pem warning), the handshake might fail 2.
      • VNC Server Connectivity: If the noVNC proxy cannot establish a reliable connection to the underlying x11vnc server (specified as localhost:5901 in the novnc command in supervisord.conf), the WebSocket handshake might fail. This could happen if x11vnc is not running correctly or is not accessible on that address and port from within the noVNC container's network namespace.
      • Browser Compatibility or Configuration: Certain browser settings, extensions, or even antivirus software on the client machine could potentially interfere with WebSocket connections 10.
      • Network Issues: Although less likely for communication between services within the same Docker container (localhost), internal networking problems could theoretically cause issues.
    • Resolution Steps:
      1. Ensure self.pem is configured correctly (as detailed in 2.1): Providing a valid self.pem file will address potential issues related to secure WebSocket connections over HTTPS.
      2. Verify noVNC command in supervisord.conf: Double-check that the --vnc localhost:5901 parameter in the novnc service definition correctly points to the x11vnc server. localhost here refers to the internal network of the Docker container.
      3. Confirm x11vnc is running: While the logs indicate x11vnc enters the RUNNING state, it's crucial to ensure it is indeed listening on port 5901 within the container. This can be verified by executing docker exec -it <container_id> netstat -tulnp | grep 5901, replacing <container_id> with the actual ID or name of the running container.
      4. Check browser's JavaScript console: Open the browser's developer tools (usually by pressing F12) and navigate to the "Console" tab. Attempt to connect to the WebUI and look for any error messages that might provide more specific details about the WebSocket handshake failure 2.
      5. Try accessing via HTTP: If the user is attempting to connect via https://localhost:6080/vnc.html, try using http://localhost:6080/vnc.html instead. This will attempt an unencrypted connection and can help determine if the issue is related to TLS/SSL.
      6. Temporarily disable browser extensions: Some browser extensions can interfere with WebSocket functionality. Try disabling all extensions and then attempting to connect again 10.
      7. Check for local interference: Although connecting to localhost, temporarily disable any local firewall or antivirus software to rule out interference from these sources 10.
    • Key Takeaway: The WebSocket handshake error is the most critical issue preventing access to the WebUI. A systematic approach to verifying the TLS/SSL configuration, the connectivity between noVNC and x11vnc, and the client-side browser setup is necessary for resolution.
  • 2.5. Persistent Browser Errors (MCS Endpoint, Deprecated Endpoint, Missing Client for kUser Scope)
    • Data Point: The logs from the persistent_browser show a series of errors:
      • " Failed to connect to MCS endpoint with error -102" (multiple times).
      • " Registration response error message: DEPRECATED_ENDPOINT" (multiple times).
      • " Client is missing for kUser scope" (multiple times).
    • Context and Background: These errors originate from within the Chromium browser (likely the "persistent browser" in this setup). They relate to Chromium's internal services, possibly including Google Cloud Messaging (GCM)/Firebase Cloud Messaging (FCM) (MCS endpoint), browser registration processes, and user profile synchronization features.
    • Cause of the Error: These errors are common in environments where Chromium is run in an isolated manner, such as within a Docker container, and might not have the same level of access to Google's backend services as a regular desktop installation. The "Failed to connect to MCS endpoint" error often indicates a network connectivity issue or a problem with the service itself. "DEPRECATED_ENDPOINT" suggests that the browser might be attempting to use an outdated API for registration. "Client is missing for kUser scope" could be related to user profile management or synchronization features that are not fully initialized or available in this specific configuration.
    • Resolution Steps:
      1. Assess impact: Determine if these errors are impacting the core functionality of the WebUI. Given that the persistent_browser command in supervisord.conf simply loads a static "Browser Ready" page, these background service errors might not be critical for the immediate use case of providing a remotely accessible browser instance via VNC.
      2. Check Chromium version: Ensure that the version of Chromium installed by Playwright in the Dockerfile is reasonably up-to-date. Older versions are more likely to encounter deprecated endpoint errors.
      3. Review launch flags: The persistent_browser command includes several flags like --no-sandbox, --disable-gpu, etc., which are often used in Docker environments. While these flags help in running Chromium in a container, they might also affect the availability of certain features that trigger these errors. Reviewing the implications of each flag might provide further insight, but it's more likely that these errors are a consequence of the environment.
      4. Network considerations: If the WebUI's intended functionality requires these background services, ensure that the Docker container has the necessary outbound network access. However, for a basic remote browser setup, this is usually not required.
      5. Ignore (if non-critical): If the primary goal is to have a remotely accessible browser instance via noVNC, and this functionality is working despite these errors, they might be safe to ignore, especially in a development or testing environment. These errors often do not prevent the basic rendering and remote control of the browser.
    • Key Takeaway: The persistent browser errors indicate issues with Chromium's attempts to connect to some of its backend services, likely due to the isolated Docker environment. While they should be noted, they might not be directly related to the WebSocket handshake failure and might not impede the core functionality of the remotely accessible browser.

3. Review of Docker Configuration Files

  • 3.1. supervisord.conf Analysis:
    • The supervisord.conf file orchestrates the various processes within the container, defining their startup order and dependencies. The defined services are xvfb, vnc_setup, x11vnc, x11vnc_log, novnc, persistent_browser, and webui. The depends_on directive ensures a logical startup sequence: xvfb (virtual X server) starts first, followed by vnc_setup (VNC password configuration), then x11vnc (VNC server), novnc (noVNC proxy), persistent_browser (Chromium), and finally webui (the Python web application). The x11vnc_log service simply tails the x11vnc log.
    • The sleep commands in the novnc and persistent_browser sections suggest a reliance on explicit delays, which might indicate that the startsecs and dependency checks are not always sufficient to ensure services are fully initialized before their dependents start. This could potentially lead to race conditions or startup failures.
    • The x11vnc_log service, which just tails the log of x11vnc, appears redundant as supervisord already manages the stdout and stderr of all its managed processes. This service can likely be removed.
    • The persistent_browser command uses find /ms-playwright/chromium-*/chrome-linux -name chrome to locate the Chromium executable, which is a robust way to handle potential version variations within the Playwright installation directory.
    • The dependency of persistent_browser on novnc means that the browser will only start after the noVNC proxy is running. If noVNC encounters issues (like the missing self.pem or other configuration problems), the browser might not start correctly or might experience problems. Similarly, the WebUI depends on the persistent browser. The 8-second sleep before starting the persistent browser might be insufficient if noVNC takes longer to initialize in some scenarios.
  • 3.2. docker-compose.yml Analysis:
    • The docker-compose.yml file defines the service browser-use-webui. It specifies the platform as linux/amd64, ensuring compatibility. The build context is set to the current directory, and it uses the Dockerfile to build the image.
    • The ports 7788, 6080, 5901, and 9222 are correctly mapped from the host to the container, allowing access to the Gradio WebUI, noVNC interface, VNC server, and Chrome remote debugging port, respectively.
    • Several environment variables are set, including API keys, endpoint URLs, logging levels, and paths. Notably, CHROME_PATH is set to /usr/bin/google-chrome, which contradicts the find command used in the supervisord.conf. This inconsistency could lead to the wrong Chromium executable being used. The supervisord.conf approach, which looks within the Playwright directory, is likely more accurate given that Playwright is used to install Chromium in the Dockerfile. The environment variable might be a leftover or intended for a different setup.
    • The volumes section includes a mount for /tmp/.X11-unix:/tmp/.X11-unix. This volume is typically used when an application inside the container needs to connect to the X server running on the host machine 7. In this setup, however, Xvfb is used to create a virtual display within the container. Therefore, this volume mount is likely unnecessary and could potentially cause permission issues or confusion. It is safer to remove it.
    • The docker-compose.yml also sets shm_size: '2gb', which is often recommended for running Chromium to avoid crashes related to shared memory limits. The container is configured to restart unless explicitly stopped (restart: unless-stopped).
    • The cap_add: - SYS_ADMIN and security_opt: - seccomp=unconfined settings grant the container very high privileges. This should be carefully reviewed and restricted if possible for security reasons, as it weakens the isolation provided by Docker.
    • A healthcheck is defined to test if the VNC server is listening on port 5901, which is a good practice for monitoring the service's status.
  • 3.3. Dockerfile Analysis:
    • The Dockerfile is based on python:3.11-slim and installs a wide range of system dependencies, including those necessary for running GUI applications (like xvfb, x11vnc, and various libx packages), fonts, and other utilities. This comprehensive installation ensures that the container has the required libraries and tools.
    • noVNC and websockify are cloned directly from their GitHub repositories, ensuring the use of potentially the latest versions.
    • Python dependencies are installed from requirements.txt.
    • Playwright and Chromium are installed using playwright install --with-deps chromium, which is the recommended way to get the browser for use with Playwright.
    • Several environment variables are set, which are then used within the container.
    • The supervisor configuration is set up by copying supervisord.conf to the correct location.
    • The necessary ports are exposed.
    • The command to start supervisord is defined as the container's entry point.

4. macOS Specific Considerations for GUI Applications in Docker

Running GUI applications in Docker on macOS often involves using XQuartz to forward the X11 display from the container to the host 11. However, the current setup utilizes Xvfb to create a virtual display inside the container, which is then accessed remotely via VNC and noVNC. In this scenario, the volume mount - /tmp/.X11-unix:/tmp/.X11-unix in docker-compose.yml is not necessary and should be removed as it's intended for sharing the host's X server socket, which is not being used here. Docker Desktop on macOS runs a virtual machine internally, and port mappings in docker-compose.yml correctly handle the redirection of network traffic. While there have been reports of issues with Docker Desktop on macOS 13, the errors reported by the user appear to be related to the container's internal configuration rather than fundamental problems with Docker Desktop itself.

5. Recommendations and Best Practices

Based on the analysis, the following recommendations are provided:

  • Address the self.pem warning: Generate a self.pem file as described in Section 2.1 and include it in the Docker image at /opt/novnc/self.pem to enable secure WebSocket connections.
  • Ignore X server extension errors: The errors related to FBPM and DPMS are likely harmless in this virtualized environment and can be safely ignored.
  • Fix D-Bus connection errors: Add the D-Bus service definition to supervisord.conf as outlined in Section 2.3 to ensure D-Bus is running within the container.
  • Troubleshoot WebSocket handshake failures: Follow the steps in Section 2.4, including verifying noVNC and x11vnc configurations, checking browser settings, and examining the browser's developer console.
  • Ensure consistent CHROME_PATH: Modify the docker-compose.yml to either remove the CHROME_PATH environment variable or set it to a value consistent with the find command used in supervisord.conf (e.g., /ms-playwright/chromium-*/chrome-linux/chrome). Using the find command in supervisord.conf is the recommended approach.
  • Remove unnecessary volume mount: Remove the - /tmp/.X11-unix:/tmp/.X11-unix line from the volumes section in docker-compose.yml.
  • Review security privileges: Evaluate the necessity of --cap-add: SYS_ADMIN and security_opt: seccomp=unconfined in docker-compose.yml and consider using more restrictive security settings if the current level of privilege is not strictly required.
  • Consider increasing sleep duration: If the persistent browser or WebUI consistently fail to start, try increasing the sleep durations in the supervisord.conf before the commands for persistent_browser and webui to allow more time for dependencies to initialize.
  • Simplify supervisord.conf: Remove the [program:x11vnc_log] section from supervisord.conf as it provides redundant logging.

6. Conclusion

The analysis of the Docker logs and configuration files reveals several potential issues that could be contributing to the user's difficulties in running the WebUI application. The most critical error appears to be the WebSocket handshake failure, which prevents the browser from connecting to the VNC server. Addressing the self.pem warning to ensure secure connections, verifying the configuration and status of the noVNC and x11vnc services, and ensuring the D-Bus service is running are key steps towards resolving this issue. The persistent browser errors, while present, might not be directly preventing the core functionality but should be monitored. Finally, cleaning up the configuration files by removing the unnecessary volume mount and ensuring consistency in environment variables will contribute to a more robust and maintainable Docker setup. By implementing these recommendations, the user should be able to successfully run the WebUI application in their Docker environment on macOS.

Table 1: Error Analysis and Resolution

Error Message Source (Service) Likely Cause Recommended Solution Research Snippet(s)
Warning: could not find self.pem novnc Missing SSL certificate file for encrypted connections. Generate self.pem and copy it to /opt/novnc/ in the Docker image. 1
FBPM extension not supported Xvfb Virtual X server limitations. Ignore the error (likely benign). 1
DPMS missing on display ":99" Xvfb Virtual X server limitations. Ignore the error (likely benign). 1
display is not capable of DPMS Xvfb Virtual X server limitations. Ignore the error (likely benign). 1
Failed to connect to the bus persistent_browser D-Bus daemon not running in the container. Add a service definition for dbus-daemon in supervisord.conf. 7
Failed to call method: org.freedesktop.DBus.NameHasOwner persistent_browser D-Bus daemon not running in the container. Add a service definition for dbus-daemon in supervisord.conf. 7
webSocketsHandshake: unknown connection error noVNC / x11vnc_log Issues with TLS/SSL, noVNC to x11vnc connectivity, browser configuration, or network. Ensure self.pem is configured, verify noVNC and x11vnc configurations, check browser console and settings. 2
Client 127.0.0.1 gone noVNC / x11vnc_log Connection closed after handshake failure. Resolve the "webSocketsHandshake" error. 2
Failed to connect to MCS endpoint with error -102 persistent_browser Chromium's inability to connect to Google services. Assess impact, check Chromium version, review launch flags, ensure network access if needed, or ignore if non-critical. N/A (Internal Chromium error)
Registration response error message: DEPRECATED_ENDPOINT persistent_browser Outdated Chromium version or issue with registration service. Check Chromium version, review launch flags, or ignore if non-critical. N/A (Internal Chromium error)
Client is missing for kUser scope persistent_browser Issue with user profile or synchronization features. Assess impact, review launch flags, or ignore if non-critical. N/A (Internal Chromium error)

Table 2: supervisord.conf Service Dependencies and Commands

Service Name Priority Depends On Command
xvfb 100 - Xvfb :99 -screen 0 %(ENV_RESOLUTION)s -ac +extension GLX +render -noreset
vnc_setup 150 - bash -c "mkdir -p ~/.vnc && echo '%(ENV_VNC_PASSWORD)s'
x11vnc 200 vnc_setup,xvfb bash -c "mkdir -p /var/log && touch /var/log/x11vnc.log && chmod 666 /var/log/x11vnc.log && sleep 5 && DISPLAY=:99 x11vnc -display :99 -forever -shared -rfbauth /root/.vnc/passwd -rfbport 5901 -o /var/log/x11vnc.log"
x11vnc_log 250 x11vnc bash -c "mkdir -p /var/log && touch /var/log/x11vnc.log && chmod 666 /var/log/x11vnc.log && tail -f /var/log/x11vnc.log"
novnc 300 x11vnc bash -c "sleep 5 && cd /opt/novnc && ./utils/novnc_proxy --vnc localhost:5901 --listen 0.0.0.0:6080 --web /opt/novnc"
persistent_browser 350 novnc bash -c "mkdir -p /app/data/chrome_data && sleep 8 && $(find /ms-playwright/chromium-*/chrome-linux -name chrome) --user-data-dir=/app/data/chrome_data --window-position=0,0 --window-size=%(ENV_RESOLUTION_WIDTH)s,%(ENV_RESOLUTION_HEIGHT)s --start-maximized --no-sandbox --disable-dev-shm-usage --disable-gpu --disable-software-rasterizer --disable-setuid-sandbox --no-first-run --no-default-browser-check --no-experiments --ignore-certificate-errors --remote-debugging-port=9222 --remote-debugging-address=0.0.0.0 "$START_URL""
webui 400 persistent_browser python webui.py --ip 0.0.0.0 --port 7788

Table 3: docker-compose.yml Port Mappings

Host Port Container Port Service
7788 7788 browser-use-webui
6080 6080 browser-use-webui
5901 5901 browser-use-webui
9222 9222 browser-use-webui

Works cited

  1. docker-novnc-cs96 - Duke Gitlab, accessed March 21, 2025, https://gitlab.oit.duke.edu/docker-cs96/docker-novnc-cs96
  2. Troubleshooting · novnc/noVNC Wiki - GitHub, accessed March 21, 2025, https://github.com/novnc/noVNC/wiki/Troubleshooting
  3. websockify/README.md at master - GitHub, accessed March 21, 2025, https://github.com/novnc/websockify/blob/master/README.md
  4. docker-novnc-baseimage - Duke Gitlab, accessed March 21, 2025, https://gitlab.oit.duke.edu/docker-novnc-baseimage/docker-novnc-baseimage
  5. secure connection with novnc for VM's | TrueNAS Community, accessed March 21, 2025, https://www.truenas.com/community/threads/secure-connection-with-novnc-for-vms.87134/
  6. Build an Ubuntu 22 desktop you can access through a web browser, with noVNC, accessed March 21, 2025, https://jeremypedersen.com/posts/2023-06-23-ubuntu-22-vnc/
  7. Running GUI Applications in a Linux Docker Container - Baeldung, accessed March 21, 2025, https://www.baeldung.com/linux/docker-container-gui-applications
  8. Experience with NoVNC - Computer Science - Dallas Makerspace Talk, accessed March 21, 2025, https://talk.dallasmakerspace.org/t/experience-with-novnc/73367
  9. [SOLVED] VNC Error 1006 , SSL connection but '/self.pem' not found - Community Support, accessed March 21, 2025, https://forum.opennebula.io/t/solved-vnc-error-1006-ssl-connection-but-self-pem-not-found/4449
  10. "noVNC - failed to connect to server" on Chrome or Edge Chromium, works on Firefox, accessed March 21, 2025, https://forum.proxmox.com/threads/novnc-failed-to-connect-to-server-on-chrome-or-edge-chromium-works-on-firefox.104019/
  11. How to run GUI apps in containiers in osx? (docker for mac), accessed March 21, 2025, https://forums.docker.com/t/how-to-run-gui-apps-in-containiers-in-osx-docker-for-mac/17797
  12. Running GUI apps within Docker containers - Trickster Dev, accessed March 21, 2025, https://www.trickster.dev/post/running-gui-apps-within-docker-containers/
  13. Docker Desktop not visible, accessed March 21, 2025, https://forums.docker.com/t/docker-desktop-not-visible/146066
  14. Incident Update: Docker Desktop for Mac, accessed March 21, 2025, https://www.docker.com/blog/incident-update-docker-desktop-for-mac/
  15. Docker Desktop Broken on Mac OS Update for over a Week | Hacker News, accessed March 21, 2025, https://news.ycombinator.com/item?id=42719245
  16. Issues · docker/for-mac - GitHub, accessed March 21, 2025, https://github.com/docker/for-mac/issues
  17. Cannot launch docker desktop for mac apple silicon chip, accessed March 21, 2025, https://forums.docker.com/t/cannot-launch-docker-desktop-for-mac-apple-silicon-chip/144820
  18. self.pem not found when using mod_proxy · Issue #982 · novnc/noVNC - GitHub, accessed March 21, 2025, self.pem not found when using mod_proxy novnc/noVNC#982

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

10 participants