3

我正在尝试使用 xterm.js 及其“附加”插件将终端添加到 Web 应用程序。我只想让一个进程在 Docker 容器中运行,然后将 xterm 实例附加到容器的标准输入/标准输出。attach 插件的示例表明,使用 websocket 接口与 docker 进行容器连接应该很简单。

我还没有能够成功地做到这一点,但它可能纯粹是我的本地配置的问题。根据对 docker API 的更改,xterm.js 的 github 问题使得它现在是否应该实际工作有点模棱两可。有没有人使用现代版本的 docker 成功地做到了这一点?

4

1 回答 1

1

这是我这边的docker配置问题......

显然,附加插件(以及任何其他尝试使用 websocket 附加的东西,例如 docker-py)不适用于默认的 dockerd 套接字(/var/run/docker.sock),因此您必须从另一个端口重定向或从 tcp 套接字而不是 unix 套接字运行 docker 守护进程。您可以使用以下socat工具执行此操作:

socat TCP-LISTEN:2376,reuseaddr,fork UNIX-CLIENT:/var/run/docker.sock 
于 2020-06-11T18:00:31.737 回答