使用docker将SSH隧道传输到远程服务器

使用docker将SSH隧道传输到远程服务器,docker,Docker,我正在尝试编写一个Dockerfile来使用ssh隧道访问远程mySQL数据库 尝试使用以下Run命令: ssh -f -N username@hostname -L [local port]:[database host]:[remote port] StrictHostKeyChecking=no 得到这个错误: “主机密钥验证失败”错误 假设Docker容器没有访问任何SSH数据的权限(即:没有~/.SSH/known_hosts),您有两种方法来处理此问题: 在容器中使用ssh k

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

尝试使用以下
Run
命令:

ssh   -f -N username@hostname -L [local port]:[database host]:[remote port] StrictHostKeyChecking=no
得到这个错误:

“主机密钥验证失败”错误


假设Docker容器没有访问任何SSH数据的权限(即:没有
~/.SSH/known_hosts
),您有两种方法来处理此问题:

  • 在容器中使用ssh keyscan-t rsa server.example.com>~/.ssh/my_known_hosts添加远程主机
  • 或者从现有的
    my\u known\u hosts
    复制相关行,或者简单地
    copy
    a将整个文件复制到容器中

  • 这两种方法都可以做到。

    答案有用吗?如果是,请接受答案。如果没有,请提供反馈和/或更多信息。