簡體   English   中英

如何通過AWS上的Drush Make從Aegir訪問私有github存儲庫

[英]How to access a private github repository from Aegir through Drush Make on AWS

我在AWS上運行了一個ec2實例。 Aegir安裝和drush make工作非常適合安裝新平台,除非我需要從私有github存儲庫下載主題。

drush make無法訪問github私有存儲庫並且無法安裝平台。

我該如何克服這個問題? 是否有一些花哨的方式為git存儲庫提供drush make或aegir用戶ssh密鑰?

我對ssh-agent了解不多,但我想可能會在我的服務器上一直運行,所以aegir可以訪問我的github。

如何使drush make訪問私有github存儲庫?

在EC2實例上生成SSH密鑰,然后將公鑰(通常為id_rsa.pub)作為deoploy密鑰添加到私有存儲庫。

stevenh512是對的,一步一步解釋如下:

免責聲明:我在Centos上使用GitLab +自定義VPS,但同樣的工作流程可以應用於任何主機(使用ssh)和GitHub(ps我喜歡GitLab用於私人回購)

  1. 登錄VPS作為aegir,可能你不能(如果你配置你的服務器緊密安全)所以以root身份登錄su aegir

  2. 轉到主目錄(cd / var / aegir)並檢查您是否有SSH密鑰。 如果你有一個跳躍1步。

     cat ~/.ssh/id_rsa.pub 
  3. 如果您沒有創建一個並且不使用密碼短語(有關更多信息,請訪問http://community.aegirproject.org/node/30#SSH_keys,但如果您需要密碼,則可以使用解決方案)。 創建后,您將獲得密鑰的隨機圖像。 (研究SSH對安全性來說太重要了!)

     ssh-keygen -t rsa 
  4. 復制密鑰,然后轉到您的GitHub / Lab->帳戶/配置文件設置 - > SSH密鑰 - >添加SSK密鑰。 為標題提供您想要的任何內容(例如:Aegir Key),並從您的服務器粘貼密鑰。

     cat ~/.ssh/id_rsa.pub 
  5. 現在回到服務器,你必須將Git添加為已知的主機,我們采用簡單的方法:只需使用ssh登錄並在要求連接時輸入yes。 准備!!

     ssh git@github.com - or - ssh git@gitlab.com 
  6. 測試:創建.make文件並將其保存在公共場所(如Dropbox,右鍵單擊復制公共URL),如:

     core = 7.x api = 2 projects[drupal][version] = 7.26 projects [my_module_name][type] = "module" projects [my_module_name][download][type] = "git" projects [my_module_name][download][url] = "git@gitlab.com:my_repo.git" projects [my_module_name][download][branch] = "master" 
  7. 轉到aegir gui並創建一個新平台並等待驗證(否則你可以將ssh作為aegir到服務器並使用drush make url.make文件夾進行測試)

警告! 這個工作流程不是最安全的! 試試它並配置適當的服務器!

信息:此工作流程也適用於本地開發機器(linux,mac,cygwin),可以在GitHub和GitLab上使用私有存儲庫

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM