我将我的应用程序上传到heroku。该应用程序是在轨道上使用ruby构建的,并安装了activeadmin和paperclip gem。文件配置正确,我可以使用活动的admin gem上传图像。这非常有效,并且在heroku上运行良好,直到我上传了更多图像,现在所有的图像都消失了。关于如何分类的任何想法?
答案 0 :(得分:3)
Heroku有一个ephemeral filesystem 这是因为每个正在运行的dyno都是一个独立的容器(很像docker),它与其他dynos没有任何共享,并且在重新启动/部署应用程序时会被销毁。
因此,当重新启动dyno时,写入磁盘的任何文件都将丢失,并且无法恢复。
您需要配置回形针以将图像上传到Amazon S3等专用文件存储系统。
答案 1 :(得分:0)
您无法在heroku上存储图像,也无法存储任何内容。您上传的文件仅供临时使用,足以将其处理到其他地方的云存储。
http://cloudinary.com/免费提供开发帐户; https://aws.amazon.com/s3/变得非常便宜,并为新开发者提供长期免费试用。还有其他资源,但最终你必须选择不是短暂的存储。
您可以使用像carrierwave或attachinary这样的宝石轻松访问和存储任何一个存储位置。