Skip to content

🐛 Fix container terminal stdin and bump xterm.js to 6.0.0 - #261

Merged
fanshan merged 1 commit into
mainfrom
fix_terminal_tail_logs
Sep 3, 2026
Merged

fanshan merged 1 commit into
mainfrom
fix_terminal_tail_logs

Conversation

@fanshan

@fanshan fanshan commented Sep 3, 2026 •

Copy link
Copy Markdown
Contributor

Tail log at 50 lines.

docker-exec-websocket-server starts the exec stream without Docker's connection hijack and writes stdin as write(buffer, { binary: true }). On current dockerode/node the first makes writes vanish into an HttpDuplex that never reaches the container, and the second throws ERR_UNKNOWN_ENCODING, which the library turns into a closed session: the shell prompt showed up but typed keys and Enter did nothing. Patch both on the exec server's own container handle.

Also upgrade xterm.js 5.5.0 -> 6.0.0 (cdnjs ships no minified js for 6.0.0) and the node-red base image 5.0.4 -> 5.0.6.

docker-exec-websocket-server starts the exec stream without Docker's
connection hijack and writes stdin as `write(buffer, { binary: true })`.
On current dockerode/node the first makes writes vanish into an HttpDuplex
that never reaches the container, and the second throws
ERR_UNKNOWN_ENCODING, which the library turns into a closed session: the
shell prompt showed up but typed keys and Enter did nothing. Patch both on
the exec server's own container handle.

Also upgrade xterm.js 5.5.0 -> 6.0.0 (cdnjs ships no minified js for 6.0.0)
and the node-red base image 5.0.4 -> 5.0.6.
@fanshan fanshan self-assigned this Sep 3, 2026
@fanshan
fanshan merged commit 96d321b into main Sep 3, 2026
8 checks passed
@fanshan
fanshan deleted the fix_terminal_tail_logs branch September 3, 2026 13:44
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

Successfully merging this pull request may close these issues.

2 participants