Files that are uploaded to Requarks can be stored one of the supported storage solutions listed below:

Local Storage

Files are stored on a local disk on the same server where Requarks is installed.

Configuration

  1. Create a new folder to a location of your choice on the same machine. Remote network locations are not recommended!
  2. Make sure the folder has the necessary read and write permissions to be used by the Node.js process.
  3. Enter the storage configuration on the Requarks setup page.

🚧

Space Limitations

Unless you expect very little file storage usage, local storage should be avoided as you can quickly run out of space, which is not an issue with cloud storage. Make sure you have enough disk space for the expected usage and monitor the drive regularly to ensure there's enough free space.

Azure Blob Storage

Microsoft provides a reliable and cheap storage solution to host files uploaded to Requarks.

Configuration

  1. In the Azure Portal, create a new Storage Account.
  2. Enter the storage configuration on the Requarks setup page. The access keys can be found in the storage account blade under All Settings > Access Keys. Both the primary or secondary keys can be used.

πŸ“˜

Geography Considerations

It is highly recommended to create the storage account in the same region as where Requarks is hosted. If Requarks is hosted in another location, use the closest region. This will ensure an adequate performance level when uploading and retrieving files.

Amazon S3

Amazon provides a reliable and cheap storage solution to host files uploaded to Requarks.

Configuration

  1. In the AWS Console, navigate to IAM (Identity Access Manager).
  2. Click on Policies in the sidebar, then on Create Policy.
  3. Select Create Your Own Policy.
  4. Copy-paste the policy template provided below:
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Action": [
                "s3:CreateBucket"
            ],
            "Effect": "Allow",
            "Resource": [
                "arn:aws:s3:::*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:AbortMultipartUpload",
                "s3:CreateBucket",
                "s3:DeleteBucket",
                "s3:DeleteBucketPolicy",
                "s3:DeleteObject",
                "s3:GetBucketPolicy",
                "s3:GetLifecycleConfiguration",
                "s3:GetObject",
                "s3:ListBucket",
                "s3:ListBucketMultipartUploads",
                "s3:ListMultipartUploadParts",
                "s3:PutBucketPolicy",
                "s3:PutLifecycleConfiguration",
                "s3:PutObject"
            ],
            "Resource": [
                "arn:aws:s3:::requarks-*",
                "arn:aws:s3:::requarks-*/*"
            ]
        }
    ]
}
  1. Save the policy.
  2. Click on Users in the sidebar, then on Create New Users.
  3. Enter an account name (e.g. requarks) and make sure the "Generate an access key for each user" option is checked.
  4. Click the Create button and make note of the Access Key ID and Secret Access Key provided.
  5. Go back to the list of Users and click on the user you just created to edit its properties.
  6. Under the Permissions tab, click on the Attach Policy button and select the policy you created earlier.
  7. Enter the storage configuration on the Requarks setup page with the values created earlier.

:triangular-flag-on-post: The bucket prefix name is a unique name that will be added in front of all buckets created by Requarks. Because bucket names are unique across all Amazon S3 users, the setup will fail if the name is already in use by another user.

:triangular-flag-on-post: A list of valid regions is provided in Amazon SDK documentation. The region name must be typed exactly as listed in the documentation under the Region column.

πŸ“˜

Geography Considerations

It is highly recommended to create the storage account in the same region as where Requarks is hosted. If Requarks is hosted in another location, use the closest region. This will ensure an adequate performance level when uploading and retrieving files.

Google Cloud Storage

Google provides a reliable and cheap storage solution to host files uploaded to Requarks.

Configuration

  1. In the Google Cloud Platform dashboard, create a new project named Requarks (or you can use an existing project).
  2. On the project dashboard, click on Enable and manage APIs. You can also access it via the hamburger menu by clicking on API Manager.
  3. On the left sidebar, click on Credentials.
  4. Click on the Create credentials button and select Service account key.
  5. For Service Account, select New service account and name it requarks.
  6. For Key Type, select JSON.
  7. Download the generated json keyfile to a location of your choice on the server where Requarks is hosted.
  8. Enter the storage configuration on the Requarks setup page by providing the absolute path to the json keyfile.

:triangular-flag-on-post: The bucket prefix name is a unique name that will be added in front of all buckets created by Requarks. Because bucket names are unique across all Google Cloud Storage users, the setup will fail if the name is already in use by another user.

πŸ“˜

Geography Considerations

It is highly recommended to create the storage account in the same region as where Requarks is hosted. If Requarks is hosted in another location, use the closest region. This will ensure an adequate performance level when uploading and retrieving files.

IBM SoftLayer Object Storage

πŸ‘

Coming soon!