缩小和转换图片上传

各位 Discourse 用户:

我们自行托管 Discourse 已有几年,在 S3 上积累了约 30GB 的图片上传文件。在此期间,我们对允许的图片文件类型以及支持的原始图片上传尺寸进行了多次更改。在过去大约 6 年的时间里,Discourse 还添加了一些我们最初没有的新功能,所以主要问题在于我们很多旧帖子。新的浏览器端编辑器调整大小功能在很大程度上满足了我们的存储需求,并且运行良好。

我的想法是,我们希望将所有现有的图片上传转换为 JPG 并缩小尺寸,以节省存储成本。在社区中搜索后,我发现了这个:

https://github.com/discourse/discourse/blob/main/script/downsize_uploads.rb

……并考虑对其进行修改?问题是,这可以用于缩小尺寸 :slight_smile: 但不能用于格式转换,也就是说,它会减小大 PNG 的原始图片尺寸,但仍将其保留为 PNG,而不是将其转换为具有新尺寸的 JPG。

看起来我必须自己编写一个版本:

……所以在这样做之前,我想分享一下我的想法,也许有人会说“或者你可以做这个非常简单的事情,而无需编写代码……”,这样我就会很高兴。

感谢任何想法、警示或评论。如果我必须编写一个新的 rake 脚本,那么如果其他人有与我们类似的设置,我可以将其分享到这里。

谢谢!

2 个赞

这是关键部分,所以如果大家有什么想法,请突出显示。我们仍在寻找最佳方法来做到这一点。我们目前的计划是,由于这些旧图片的托管成本非常高,我们可能会删除过去 5 年的帖子以降低成本,这很可惜,但这是因为我们的预算非常低。 :slight_smile: