等同于使用ssh隧道

使用虚拟主机而不是部署Docker容器,对于我来说,创buildssh隧道是为了从我的本地机器访问分隔的机器是一个正常的工作过程。 例如连接我的psql客户端到一个Postgres实例,我只能从一个堡垒框到达。

有了Docker,一切都变得更加复杂了。 是否有相同的做法,但与Docker? 通过Docker实例隧道到RDS实例?

您使用docker CLI连接到正在运行的容器。 例如…

要login到容器中运行的数据库,您可以使用(从本地计算机)

 docker exec -it mypsqlcontainer psql -U username dbname 

我个人几乎从来没有ssh进入主机。 一切都可以通过docker CLI完成。

您可以使docker主机的SSH隧道。 数据库端口必须可以从docker主机访问(即使用“-p”docker运行选项)。

如果您不想发布数据库端口,您可以使用ssh服务器创build跳箱容器,在此容器上发布端口22,并将用户容器链接到具有数据库容器的链接跳箱容器。