使用docker远程服务器的SSH隧道

我正在尝试编写Dockerfile来使用ssh隧道来访问远程mySQL数据库。

试着用下面的Run命令:

 ssh -f -N username@hostname -L [local port]:[database host]:[remote port] StrictHostKeyChecking=no 

并得到这个错误:

“主机密钥validation失败”错误

假设Docker容器不能访问任何SSH数据(即:没有~/.ssh/known_hosts ),你有两种方法来处理这个:

  1. 从容器内使用ssh-keyscan -t rsa server.example.com > ~/.ssh/my_known_hosts添加远程主机
  2. 或从现有的my_known_hosts复制相关行,或者将整个文件COPY到容器中。

这两种方法都应该这样做。