Dockerfile:跳过私钥的密码

时间:2017-03-25 23:16:31

标签: github docker dockerfile ssh-keys

我使用私钥从我的Docker文件中的Github下载我的存储库。我有这样的事情:

SELECT ... INTO

SET V_To_warehouse_stock = (SELECT quantity from stocks where warehouse_id = V_To_warehouse and product_id = P_product); 是一个参数。我无法重新创建此密钥。 我的问题是在连接过程中我收到以下错误: SELECT ... INTO

是否有可能以某种方式跳过密码?

3 个答案:

答案 0 :(得分:3)

密码需要解密密钥。你不能跳过"跳过"它。您可以使用ssh-keygen -p 删除密钥上的密码(有关详细信息,请参见手册页)。

您可能希望调查GitHub Deploy Key的使用,{{3}}是一个每个存储库的ssh密钥,它授予对存储库的只读访问权限。这些是为了解决完全您自己所处的情况:需要从需要身份验证的GitHub存储库中自动部署软件。

答案 1 :(得分:0)

您的MY_PRIVATE_KEY似乎受密码保护(密码为空的密钥与非加密密钥相同)。

.ssh/id_rsa中的密钥通常不受密码保护,而是受权限保护,只允许所有者访问(0600)。

您可以使用OpenSSL从密钥中删除密码,如下所示:

set MY_PRIVATE_KEY = `echo $MY_PRIVATE_KEY | openssl rsa`

id_rsa的内容应如下所示:

-----BEGIN RSA PRIVATE KEY-----
. . .
-----END RSA PRIVATE KEY-----

答案 2 :(得分:0)

我遇到了类似的问题,事实证明原因是 ssh密钥由于Makefile而被不同地复制