Discourse 与 S3 是对好基友,如果你对 S3 比较熟悉的话,那么对你来说帮助会非常大。
很多人的虚拟主机空间是有限并且资源也是有限的。
使用 S3 进行备份能够更好的利用空间。
你可以按照下面的步骤进行配置:
设置备份频率进入 admin > backup,然后设置 backup_frequency 为 1。这个是参数是表示备份的频率,默认为 7 。
1 表示的是每天进行备份一次。
7 表示的是每 7 天进行备份一次。
针对一般访问网站,如果使用 S3 进行存储备份的,最好还是每天备份一次。
Discourse-backup-01753×140 26.7 KB
这个 Bucket 可以是私有的不公开的,这里需要注意的是,如果你还使用了 S3 为图片和附件存储的话,那么那个 Bucket 在设置的时候是需要选择 public。
为了方便,你可以在这里另外创建一个 bucket,尽量不要和附件和图片的存储搞混了。
我们建议你在这里多设置一个目录路径,因为 Discourse 会在这个文件夹下面创建多个需要的文件夹。
以便于你的存储更加清晰和明确。
Discourse-backup-021152×431 76.5 KB
下一步,你需要为你存储的备份数据设置:s3_access_key_id
和s3_secret_access_key
以及s3_region
。这 3 个参数非常重要,region 不能选错了。如果你的备份上传不上去,那么绝大部分情况可能是权限的问题。
具体的设置方法请参考: https://meta.discourse.org/t/setting-up-file-and-image-uploads-to-s3/7229 文章中的内容。
需要注意的是,这里你需要为你的 key ID 赋予足够的权限,否则你将没有办法上传。
Discourse-backup-03864×175 36.2 KB
将备份的方式设置为 S3 存储。
你需要在这个参数选择部分,将 Local 的存储修改为 S3 存储。
Discourse-backup-04795×115 20.5 KB
当一切都设置好以后,你可以进行测试备份。
单击备份按钮进行测试备份。在备份的菜单中,直接单击 Buckup 就可以了。
Discourse-backup-051187×570 70.7 KB
在弹出的界面中会询问你是否包含上传的图片和附件。
一般来说都会在这里选择 Yes。随后界面会跳转到日志界面中,然后会将备份的信息通过日志显示出来。你可以通过观察日志是否显示 Finished 来确定备份是否已经完成。
更重要的是你可以登录你的 S3 账号,确定已经有最新的备份了。
Discourse-backup-061150×761 288 KB
你需要注意下时间,大小和文件名进行确认就可以了。
Discourse-backup-071763×428 56.8 KB
通过设置 S3 的备份,我们能够扩展 Discourse 的存储空间,几乎获得无限的备份和无限的存储空间。对网站运营来说,自动备份和上传是非常实用的功能。
同时你也有多个存储的备份,便于你对网站进行恢复的时候恢复到不同的备份点。
因为你将备份文件,从 Docker 上分离了,这个对你日常备份非常有帮助。能够大量降低存储空间的使用。
我们同时建议将图片和附件也存储到 S3 上面,这样对你迁移,备份恢复都有非常大的优势。