Heroku:如何部署具有私有repo依赖的NodeJS应用程序?

daolsyd0  于 11个月前  发布在  其他
关注(0)|答案(1)|浏览(104)

我想在Heroku上部署一个NodeJS应用程序,该应用程序在package.json中列出了一个私有存储库作为依赖项。
我如何授予Heroku对这个单一存储库的只读访问权限,而不暴露任何不必要的凭据?

dly7yett

dly7yett1#

这个问题已经以各种形式被反复问到,但我无法得到任何有效的答案。
以下是最终成功的诀窍-请注意,我使用的是Windows 10:

  • 在git bash中使用命令ssh-keygen -t ssh-rsa -C "myusername@protonmail.com"生成密钥(空密码)
  • 复制并粘贴*.pub文件(由上述命令创建)的内容作为部署密钥:https://github.com/myusername/my-private-repo/settings/keys
  • 上面的my-private-repo指的是依赖关系,而不是您正在部署的存储库
  • 在Heroku上,添加https://github.com/heroku/heroku-buildpack-ssh-key.git作为构建包-ABOVE-heroku/nodejs构建包
  • 将Heroku应用程序的环境变量BUILDPACK_SSH_KEY设置为其他文件(不是以.pub结尾的文件)的-ENTIRE-内容,包括结尾的NEWLINE(不确定是否可选)
  • package.json中设置依赖URL,如下所示:
"dependencies": {
    "my-private-repo": "git+ssh://github.com/myusername/my-private-repo.git"
  }

字符串
快乐部署

相关问题