Quando distribuisco un'applicazione Rails con OpsWorks, viene creato un nuovo database.yml nella directory shared
. Ignora il database.yml
esistente (che giustamente non dovrebbe essere nel repository), e ho anche provato a specificare JSON personalizzato ma non funziona nulla. Forse ho la struttura sbagliata?OpsWorks sovrascrive database.yml/ignora JSON personalizzato
{
"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"
}
}
}
}
Solo per aggiungo, perché mi ci è voluto del tempo per risolverlo anche dopo aver ottenuto il giusto JSON. Nella console RDS è necessario aggiungere il gruppo di sicurezza dal server Opsworks Rails all'istanza RDS, in modo che l'istanza possa connettersi a RDS. Per favore vedi qui come fare: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/... Puoi provare se puoi collegarti all'istanza RDS da Opsworks intance essere ssh all'istanza e quindi telnet alla tua istanza RDS, per esempio telnet Your-RDS-Instance 3306 – Martin
durante la distribuzione in OpsWorks, non dovremmo includere 'database.yml' con la nostra app? L'ho incluso e ora sto ottenendo errori simlink "Impossibile leggere il file" da Apache2. Molto confuso, non sicuro di dove questo è documentato. – mmcrae