2012-06-14 25 views
0

我正在使用EngineYard來託管我的Rails 3.2應用程序。此應用程序允許用戶發佈圖像/資產。我將它們保存在公共目錄中(使用Paperclip Gem)。現在,我的問題是 - 通過新部署,我不得不手動將資產複製到CURRENT版本。EngineYard:分離代碼和資產

雖然我可以使用AmazonS3,但我仍然想知道EngineYard中是否有一種方法可以讓我從代碼/ data/assets之外的其他目錄中保存/提供資源。

請讓我知道,如果你看到任何其他替代實現。

回答

1

通常你的結構看起來像

/data 
    myapp/ 
    shared/ 
     images 
    releases/ 
     20120613000000 
     20120601000000 
     ... 
    current (symlink to one of the releases) 

部署時,你符號鏈接公共/圖片,共享/圖像等你的照片總是得到存儲在非釋放位置相關。

我會鼓勵你使用類似s3的東西:當你想在多個實例上託管應用程序時,你會更容易。

+0

我應該手動SSH進入服務器並在每次部署後創建符號鏈接?或者,有沒有我需要編輯的腳本? –

+0

不,請在您的deploy.rb中執行此操作(我假設您使用的是capistrano) –