NodeBB S3 Uploads Plugin
This plugin is an ETR maintained fork of nodebb-plugin-s3-uploads-updated-quest, which, in turn is a fork of the outdated and unmaintained nodebb-plugin-s3-uploads and nodebb-plugin-s3-uploads-updated
npm install nodebb-plugin-s3-uploads-updated-quest
Plugin Version | Dependency | Version Requirement |
---|---|---|
0.6.x | NodeBB | Developed on v1.13.1+ |
A plugin for NodeBB to take file uploads and store them on S3, uses the filter:uploadImage
hook in NodeBB.
S3 Uploads Configuration
Asset host is optional - If you do not specify an asset host, then the default asset host is <bucket>.s3.amazonaws.com
.
Asset path is optional - If you do not specify an asset path, then the default asset path is /
.
Configuration Variables
From the NodeBB Admin panel, you can configure the following settings to be stored in the Database:
-
bucket
- required — The S3 bucket to upload into -
host
- optional - The base URL for the asset - defaults to: http://<bucket>.s3.amazonaws.com -
path
- optional - The asset path (optional) -
accessKeyId
- required — The AWS Access Key Id -
secretAccessKey
- required — The AWS Secret Access Key
NOTE: Storing your AWS Credentials in the database is can present a security risk. YOU HAVE BEEN WARNED.
Caveats
Currently all uploads are stored in S3 keyed by a UUID and file extension, as such, if a user uploads multiple avatars, all versions will still exist in S3. This is a known issue and may require some sort of cron job to scan for old uploads that are no longer referenced in order for those objects to be deleted from S3.