如何将devcontainer端口转发到不同的本地端口?

问题描述 投票:0回答:1

我在远程服务器上运行多个开发容器,并且我从 VS Code 连接到它们。 所有这些容器都在端口 22 上启用了 ssh。

"forwardPorts": [22]
中的
devcontainer.json
不允许我选择将远程服务器上的 devcontainer 的端口 22 映射到笔记本电脑的端口 23。这意味着,我在任何时候都只能从本地开发机器将端口转发到这些容器之一。

"appPort": ["23:22"],
允许我将容器的端口 23 映射到端口 22,但这仅在托管 docker(和容器)的远程服务器上可用。

我确信我在这里遗漏了一些东西:vs code已经允许将容器内的端口转发到本地端口:容器内的22,我的笔记本电脑上的22,通过ssh连接到远程服务器。一定有办法配置它使用不同的本地端口,但我没找到。

我可以创建另一个到远程主机的 ssh 会话并使用它进行端口映射,这样我就可以

laptop -> ssh[map local 23 to remote 23] -> server
并连接到本地 23,但 devcontainers 规范必须支持另一种方式,至少我是这么认为的。

vscode-devcontainer devcontainer
1个回答
0
投票

使用 Visual Studio Code 在容器内进行开发的官方文档没有明确提到支持在

devcontainer.json
配置中将本地端口映射到不同的远程端口。可能不支持这种特定场景,我建议定期检查最新文档或联系 VS Code 社区了解最新开发情况和/或请求此功能

目前,您为远程主机创建额外的 SSH 会话以进行端口映射的方法似乎是一种有效的解决方法。

ssh -L 5168:localhost:8080 remote-user@remote-docker-host

© www.soinside.com 2019 - 2024. All rights reserved.