heroku 回形针图像出现但随后消失

heroku paperclip images appear but then disappear

我将我的应用程序上传到 heroku。该应用程序是在 rails 上使用 ruby 构建的,并安装了 activeadmin 和回形针 gem。文件配置正确,我可以使用他的活动管理员 gem 上传图像。在我上传更多图像之前,这在 loaclly 上运行得非常好并且在 heroku 上运行良好,现在所有图像都消失了。关于如何对其进行排序的任何想法?

Heroku 有一个 ephemeral filesystem
这是因为每个 运行 dyno 都是一个独立的容器(很像 docker),它与其他 dyno 不共享任何内容,并且在应用 restarted/deployed.

时被销毁

因此任何写在磁盘上的文件都会在dyno重启时丢失,并且无法恢复。

您需要配置回形针以将图像上传到专用文件存储系统,例如Amazon S3

您不能在 heroku 上存储图像,或任何与此相关的东西。您上传的文件仅供临时使用,足够长的时间将它们处理到其他地方的云存储中。

http://cloudinary.com/ offers development accounts for free; https://aws.amazon.com/s3/ 变得便宜得离谱,并为新开发者提供长期免费试用。还有其他资源,但最终您必须选择非瞬态存储。

您可以使用 carrierwave 或 attachinary 等 gem 来轻松访问和存储这些存储位置中的任何一个。