【问题标题】:Rails + Capistrano + Git: Steps to successfully deploy an app?Rails + Capistrano + Git:成功部署应用程序的步骤?
【发布时间】:2013-10-24 04:51:36
【问题描述】:

我们使用 git 进行版本控制。现在似乎只有我的帐户能够成功部署到多个应用程序的远程服务器,但我不知道为什么。我想设置它,以便为我公司的其他人部署工作,但我并没有真正在脑海中布置完整的画面,所以我不知道需要做什么。

在我看来,任何想要部署的人都需要:服务器上的用户帐户、github 上的帐户以及拉取权限...?但是,其他用户似乎有臭名昭著的Permission denied (publickey). fatal: The remote end hung up unexpectedly 和其他错误。

谁能提供我需要在服务器上执行的操作(创建帐户、添加 ssh 密钥或其他什么?)和 git(再次 ssh 密钥?不确定)以使部署工作的简短列表?

【问题讨论】:

  • 您需要在服务器上为所有可能在某个时候部署应用程序的机器提供 ssh 密钥。这导致了您看到的错误
  • 如果你们都使用同一个 git 存储库,并且在部署时使用相同的用户名,那么 ssh 密钥应该是您唯一需要的东西
  • 因此,对于每台要部署的机器上的每个用户,我必须复制该用户的 ssh 密钥并将其粘贴到将要部署的用户的授权密钥上(无论是公共用户还是特定用户)?

标签: ruby-on-rails git ssh


【解决方案1】:

Capistrano 假设您可以ssh 进入您要部署到的服务器。您可能正在使用公共appsdeployer 或其他一些特定于应用程序的用户来部署您的应用程序。这将是您在 deploy.rb 文件中设置的用户。

您需要将每个人的公钥复制到您的部署用户的授权密钥中。这就是 Capistrano 的工作原理。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-29
    • 2019-04-27
    • 1970-01-01
    • 2017-10-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多