Setting up an AWS bucket
There are also lots of S3 compatible storage options offered by other vendors that may be even more price competitive, like Backblaze B2, but we will focus on AWS for the purposes of this how-to. Start with creating an Amazon S3 account if you don't already have one set up.
Next, you need to create an S3 bucket for your site where all the files will be uploaded. Log in to your AWS Console and search for S3.
Then click on Create bucket.
Start by giving the bucket a name. After that, scroll down to the Object Ownership section, and click the button next to ACLs enabled.
On this same page, you will want to disable the 5 checkboxes blocking public access, and then check the box to acknowledge that objects in this bucket will be public:
You can keep all other settings while creating your bucket the same, and scroll to the bottom of the page and click Create bucket.
After creating the bucket, make sure to make note of the region name of your bucket that starts after the parenthesis (it should be all lower case, and be separated by dashes or periods). We will need that to configure the Any Cloud Storage module later.
Creating user credentials
Now that your bucket is set up, you need to create a user for that Omeka can use to read and write files to the bucket. You do this in the Identity & Access Management area of the Amazon AWS dashboard, also called IAM. Use the search bar to go to the IAM section.
From the IAM area, click on Users in the left sidebar, then Create user. Enter a User name and click Next.
From here, select Attach policies directly, then in the search box under Permissions policies search for the AmazonS3FullAccess policy. Check the box next to the policy, then click Next.
Next, click Create User.
Once you do, click on View user in the green banner to view the account you created.
From here, click Create access key.
Select Other, then Next.
You may set a description tag for the access key, or leave it blank, this is simply a descriptive value in the AWS console, but will not affect the functionality of your access key. From here, click Create access key.
Finally, on the Retrieve access keys screen you will be able to get access to your Access key and and Secret access key. Click the Copy buttons next to each and save them in a text file for later. When you've copied both items, click Done.
After creating these user credentials, you should be all set in AWS, and we can move over to configuring Omeka S.
Installing the module
On the Omeka S side of things, start by downloading the latest version of the module from Github, then use the cPanel file manager to upload the zip file to your Omeka S install's modules directory, then right click on the file and select Extract to unzip it.
After you extract the file, you can delete the zip file that you just uploaded, as we won't need it anymore.
Next, log in to the dashboard of your Omeka S site, and go to the Modules page. Next, to Any Cloud, click the Install button.
Select Amazon S3 Storage, as your Cloud Service Adapter, then paste in your Access key and Secret Access key in the AWS Key and AWS Secret Key fields, respectively. Next, enter your bucket name, and the AWS region your bucket is located in. You do not need to use the AWS Endpoint field, unless you are not using AWS and are instead using another S3 compatible service.
After entering your key, secret key, bucket name, and region, you can click the Submit button at the top of the page.
Now you should be all set! Go upload a file on the Items page of Omeka to test and make sure things are working!