Sails js SSH 数据库连接

Sails js SSH DB connection

我正在尝试通过 Web 应用程序以编程方式使用 SSH 连接到远程数据库。

我一直在尝试 ssh2 模块,我可以连接到远程服务器,但我想做的是直接连接到数据库中的表。

我还在 bootstrap.js 文件中尝试了 tunnel-ssh,这样我就可以通过隧道连接到数据库,但现在我认为正在发生的事情是数据库连接在隧道建立之前就开始了,因此我收到 Connection refused.

是否可以使用 sails js 的 connections.js 文件中的某种配置来实现此隧道? 还有其他建议吗?

谢谢

最后我所做的是使用 docker-compose 和 2 dockers 1) 网络应用程序和 2) SSH 客户端。我的 docker-compose 文件看起来像这样:

    services:   
      db:
        image: agonza1/sshclient
        volumes:
          - .:/ssh
        command: "ssh -Ng -L 5432:localhost:5432 -i sshkey.pem -o StrictHostKeyChecking=no root@site.com -p 1234"

      web:
        build: .
        env_file:
          - .env
        ports:
          - "443:443"
        links:
          - db
        depends_on:
          - db

其中 sshclient 是这样的:https://hub.docker.com/r/kroniak/ssh-client/~/dockerfile/