我正在尝试使用SSH以编程方式从Web应用程序连接到远程数据库。
我一直在尝试ssh2
模块,我可以连接到远程服务器,但我想要做的是直接连接到数据库中的表。
我还在tunnel-ssh
文件中尝试了bootstrap.js
,所以我可以隧道到数据库,但现在我认为发生的是数据库连接在隧道建立之前就开始了,因此我就是获得Connection refused
。
是否可以使用sails js的connections.js
文件中的某种配置来实现此隧道?
还有其他建议吗?
由于
答案 0 :(得分:0)
最后我所做的是使用docker-compose和2个dockers 1)web app和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/