繁体   English   中英

从本地回形针存储迁移到S3

[英]Migrating from local paperclip storage to S3

我们最近搬到了一个新的虚拟主机,它提供了有限的存储空间,所以我们试图将通过Paperclip gem上传的所有用户上传(头像,文件等)移动到Amazon S3。 我有几百个文件都对应于我现在试图集中迁移的不同模型。

我发现这个文件引入了一个漂亮的回形针耙任务:

rake paperclip:refresh:missing_styles

这个命令为我做了一些工作,但是,我注意到它只设置文件结构而不发送任何数据 - 此外它没有设置使用has_attached_file调用中的:styles hash定义的任何缩略图。 也就是说,我在我的一个模型上设置了以下回形针:

class User < ActiveRecord::Base
  has_attached_file :avatar,
    :styles => {
      :thumb => "100x100#",
      :small  => "150x150>",
      :medium => "200x200" }
end

运行命令后,这是一些示例输出:

$ rake paperclip:refresh:missing_styles
Regenerating User -> avatar -> [thumb, :small, :medium]
Regenerating Mercury::Image -> image -> [:medium, :thumb]
Regenerating Profile -> image -> [:home_feature, :large, :medium, :thumb]
Regenerating Page -> preview -> [:portfolio]
Regenerating Category -> default_image -> [:home_feature, :large, :medium, :thumb]

导航到我的S3 Bucket我可以看到所有目录都已正确设置和每个附件,但仅适用于原始图像文件,它们都是0字节。 我误解了这个命令的用法吗? 我找不到任何其他工具将批量文件的整个目录上传到S3,如果有一个安全的工具已经覆盖了这个而不需要付款那么我就是张开耳朵。 我已经尝试构建一个ruby脚本来插入他们的SDK并手动上传这些文件,但他们的Ruby文档并不是很好。

看起来我需要超越ruby这个, s3cmd似乎是这类工作最合适的工具。 就我而言, sync命令可以解决问题:

s3cmd sync my-app/public/system/ s3://mybucket 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM