IT序号网

Docker 中的 SSH 端口转发

yxwkf 2025年05月04日 编程语言 78 0

我有这两个容器,例如backend (CentOs) 和mongo。我想要的是,从 backend 容器中我可以连接到 mongo 数据库,就像它在本地运行一样,$> mongo localhost:27017

无论如何,据我了解,您可以将端口 localhost:27017 映射到 mongo:27017,如下所示

$backend> ssh -L 27017:mongo:27017 root@mongo 

但是,如果我这样做,我必须提供 root 密码,之后它会将我登录到 mongo 容器中,并且不会发生端口转发

背景:我想这样做是因为我正在运行一个连接到本地主机上的 Mongo 数据库的 Java 程序,并且我无法更改它。

请您参考如下方法:

我找到了正确的 SSH 端口转发命令

$> ssh root@mongo -L 27017:localhost:27017 -Nf 

通常,此命令的想法是映射非公共(public)端口 - 通过公共(public)服务器到您自己的服务器/计算。

* `root@mongo` - the public server 
* -L <port on your server>:<third server address>:<port> 
* `-Nf` - Do not login 

因为公共(public)服务器第三服务器是同一台计算机/容器,所以您必须使用localhost:)


评论关闭
IT序号网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!