Problem with attaching web browser remote debugger to app running in docker container
@ono-max y travaille déjà.
Depuis le 7/3/2023.
Évaluation
Cette issue n'a pas encore été évaluée.
Description
Your environment
ruby -v: 3.2.1rdbg -v: 1.7.1
Describe the bug
Hit problem with remote debugger with web browser
Error:
web-1 | ["DEBUGGER Exception: /usr/local/lib/ruby/gems/3.2.0/gems/debug-1.7.1/lib/debug/thread_client.rb:1233",
web-1 | #<NoMethodError: undefined method `[]=' for nil:NilClass>,
web-1 | ["/usr/local/lib/ruby/gems/3.2.0/gems/debug-1.7.1/lib/debug/server_cdp.rb:1283:in `block in variable'",
web-1 | "/usr/local/lib/ruby/gems/3.2.0/gems/debug-1.7.1/lib/debug/server_cdp.rb:1281:in `each'",
web-1 | "/usr/local/lib/ruby/gems/3.2.0/gems/debug-1.7.1/lib/debug/server_cdp.rb:1281:in `each_with_index'",
web-1 | "/usr/local/lib/ruby/gems/3.2.0/gems/debug-1.7.1/lib/debug/server_cdp.rb:1281:in `variable'",
web-1 | "/usr/local/lib/ruby/gems/3.2.0/gems/debug-1.7.1/lib/debug/server_cdp.rb:1097:in `block in process_cdp'",
web-1 | "/usr/local/lib/ruby/gems/3.2.0/gems/debug-1.7.1/lib/debug/server_cdp.rb:1095:in `map'",
web-1 | "/usr/local/lib/ruby/gems/3.2.0/gems/debug-1.7.1/lib/debug/server_cdp.rb:1095:in `process_cdp'",
web-1 | "/usr/local/lib/ruby/gems/3.2.0/gems/debug-1.7.1/lib/debug/thread_client.rb:1224:in `wait_next_action_'",
web-1 | "/usr/local/lib/ruby/gems/3.2.0/gems/debug-1.7.1/lib/debug/thread_client.rb:856:in `wait_next_action'",
web-1 | "/usr/local/lib/ruby/gems/3.2.0/gems/debug-1.7.1/lib/debug/thread_client.rb:320:in `suspend'",
web-1 | "/usr/local/lib/ruby/gems/3.2.0/gems/debug-1.7.1/lib/debug/thread_client.rb:358:in `block in step_tp'",
I'm running app in docker container (running app in localhost is not an option), thus I setup host/port and path setup so that I was able to attach debugger from web browser to container. When stepping through code it however, it gets often this error, which then breaks app & debugger connection.
Also paths seem to pose a bit problem, which I worker around via creating symlink in host machine filesystem, matching directory structure inside container, and mounted source directory from that symlink into web browser, instead of actual directory in file system. Reason being that web browser seems to send absolute path to file system when setting break point, while inside container sources are at "/app" (in localhost "/home/myaccount/....")
To Reproduce
- have app running in container
- do necessary 0.0.0.0:5555 debug port redirection from docker compose to localhost (port 5555 forwarded to host os side)
- launch app
- connect web browser debugger to app running in container
- set some breakpoint
- do relecant things to trigger breakpoint
- step through code
=> that "undefined method `[]=' for nil:NilClass" will happen sooner or later
Expected behavior
Not to have internal error in debugger
Additional context
"app stack" to understand debugging context, in case it affects problem.

- Langage dominant
- Ruby
- Étoiles
- 1.3k
- Forks
- 146
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de ruby/debug
-
Difficulté 3/5 1-2 jours Accessibilité débutants 68/100
-
Support exceptionOptions in setExceptionBreakpoints to catch arbitrary exception classes via DAP Ouverte
Difficulté 4/5 3-5 jours Accessibilité débutants 55/100
-
Difficulté 3/5 1-2 jours Accessibilité débutants 45/100
-
Difficulté 4/5 3-5 jours Accessibilité débutants 52/100
-
Difficulté 4/5 3-5 jours Accessibilité débutants 35/100
Toutes les issues de ruby/debug
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
palladius/rails8-app-on-gcp#145 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
rubocop/rubocop-rspec#2236 ·
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
riscv/riscv-unified-db#2624 · 1 réaction ·
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 88/100