2011-07-11 13 views
36

Heroku solo tiene 100 MB de almacenamiento de archivos, ¿verdad? Estoy haciendo una aplicación de rieles de bajo nivel y realmente me gusta Heroku, pero si mi aplicación permite que cada usuario cargue una imagen, puedo quedarme sin espacio rápidamente ... ¿hay una solución simple que me permita tener una alternativa? almacenamiento de archivos para fotos de perfil o algo por el estilo?Heroku File Storage

+21

Mientras que usted desea utilizar S3 en Heroku (ya que el espacio de archivos es sólo temporal, y no persiste) para almacenar cosas como fotos de perfil (véase la respuesta de Codeglot abajo), yo quiero señalar que el límite de 100 MB es solo para la babosa (la fuente compilada y las gemas de su aplicación). Su directorio/tmp en realidad puede contener archivos muy grandes (creo que he visto hablar de 4GB está bien para almacenar allí temporalmente). Pero, de nuevo, perderá lo que tenga allí si su dinamómetro se reinicia, por lo que solo debe usarse como un espacio de almacenamiento temporal, no permanente. –

+0

Muy útil, Riley. ¡Gracias! –

+1

además ver el artículo del Centro de Heroku dev [aquí] (http://devcenter.heroku.com/articles/s3) en el enlace del tema –

Respuesta

18

Ver this blog post

En su modelo.

has_attached_file :picture, 
        :styles => {:large => "275x450>"}, 
        :storage => :s3, 
        :s3_credentials => "#{RAILS_ROOT}/config/s3.yml", 
        :path => "appname/:attachment/:style/:id.:extension" 

En s3.yml en su configuración dir:

development: 
     bucket: bucketname 
     access_key_id: key 
     secret_access_key: key 

    production: 
     bucket: bucketname 
     access_key_id: key 
     secret_access_key: key 

Entra luego registrarse para un cubo en Amazon S3: http://aws.amazon.com/s3/

+4

está muerto. ¿Sabes si hay uno nuevo? –

+1

@DonalRafferty Todavía está en la máquina de retorno. – Tijmen