7

當我使用OpsWorks部署Rails應用程序時,會在shared目錄中創建一個新的database.yml。它忽略了現有的database.yml(這當然不應該在回購),我也試過指定自定義JSON,但沒有任何作品。也許我的結構錯了?OpsWorks覆蓋database.yml /忽略自定義JSON

{ 
    "deploy": { 
    "my-app-name": { 
     "database": { 
     "adapter": "mysql2", 
     "encoding": "unicode", 
     "host": "xxxxxx.rds.amazonaws.com", 
     "port": "3306", 
     "database": "db-name", 
     "pool": "5", 
     "username": "username", 
     "password": "password" 
     } 
    } 
    } 
} 
+1

只是爲了補充,因爲我花了一些時間來解決這個問題,以及在獲得了JSON之後。在RDS控制檯中,您需要將Opsworks Rails服務器的安全組添加到您的RDS實例,以便允許實例連接到RDS。請參閱此處如何操作:docs.aws.amazon.com/AmazonRDS/latest/UserGuide/...如果可以從Opsworks實例連接到RDS實例,則可以嘗試通過ssh連接到實例,然後telnet到您的RDS實例,例如在部署到OpsWorks時,telnet Your-RDS-Instance 3306 – Martin

+0

,我們不應該在應用中包含'database.yml'嗎?我將它包含在內,現在我正在死掉Apache2的符號鏈接「無法讀取文件」錯誤。非常困惑,不知道這是記錄在哪裏。 – mmcrae

回答

4

看也在這裏:

http://wojtek.ziniewi.cz/2013/06/10/custom-symlinks-in-amazon-opsworks-ror-application/

永遠記住登錄到自己的opsworks的一個服務器和打字的控制檯來檢查你的籌碼,JSON:

opsworks-agent-cli get_json 
+0

感謝您的命令!它在哪裏記錄? –

+1

這是來自官方Amazon Opsworks文檔 – wojciechz

+2

中斷鏈接。與往常一樣,在出現這種情況時,將文本複製到答案是一種很好的做法。 – Nuzzolilo