Websocket broken with Portainer ?

Hi want to deploy Portainer on fly and connect to my vps with edge agent but the websocket seem to be broken, any idea why ?

portainer agent logs

portainer logs

fly.toml

# fly.toml file generated for REDACTED on REDACTED
app = "REDACTED"
kill_signal = "SIGINT"
kill_timeout = 5
processes = []

[build]
  image = "portainer/portainer-ce:latest"

[experimental]
  allowed_public_ports = []
  auto_rollback = true

[mounts]
  destination = "/data"
  source = "portainer_data"

[[services]]
  http_checks = []
  internal_port = 9000
  processes = ["app"]
  protocol = "tcp"
  script_checks = []
  [services.concurrency]
    hard_limit = 25
    soft_limit = 20
    type = "connections"

  [[services.ports]]
    force_https = true
    handlers = ["http"]
    port = 80

  [[services.ports]]
    handlers = ["tls", "http"]
    port = 443
    
  [[services.ports]]
    port = 9000

  [[services.tcp_checks]]
    grace_period = "1s"
    interval = "15s"
    restart_limit = 0
    timeout = "2s"
    
[[services]]
  http_checks = []
  internal_port = 8000
  processes = ["edge"]
  protocol = "tcp"
  script_checks = []
  [services.concurrency]
    hard_limit = 25
    soft_limit = 20
    type = "connections"

  [[services.ports]]
    port = 8000

  [[services.tcp_checks]]
    grace_period = "1s"
    interval = "15s"
    restart_limit = 0
    timeout = "2s"