Optional: Object storage provider. Mastodon can save files that you and your users upload on the hard disk drive of the VPS it runs on, however, the hard disk drive is usually not infinite and difficult to upgrade later. An object storage provider gives you practically infinite metered file storage.
How to get: Amazon S3, Exoscale, Wasabi, Google Cloud, anything that exposes either an S3-compatible or OpenStack Swift-compatible API. Comes with a monthly cost based on the amount of files stored as well as how often they are accessed.
I would like to know if Tardigrade provides S3-compabible API.
In that case you will not need to host the Tardigrade S3 Gateway yourself, you can use a hosted version. But it’s beta and you can use only server-side encryption at the moment.
Hi, first I was going to set up gateway on https://documentation.tardigrade.io/api-reference/s3-gateway#set-up, but I cannot even set up the gateway because the documentation is very confusing. It looks to me that the procedure on the page is not updated or not well organized…
Should Set Up section be ignored (it was copied from the deprecated article, do we have the concept of API for initial setup yet?), and is Configure using an Access Grant the first step? Also, is Reconfiguring the AWS CLI to interface with the Tardigrade Network required in every case? Not quite sure what must be done and what may be done, at lease for me.
Also when you run gateway run after doing Configure using an Access Grant, you get the error below under Secret Key:
DeploymentID: fef77d00-69be-4507-b62b-1c2229caa56d
Error: WARNING: Expected number of all hosts (0) to be remote +1 (0) (*errors.errorString)
4: /go/pkg/mod/github.com/minio/minio@v0.0.0-20201028162317-be7f67268d1e/cmd/peer-rest-client.go:866:cmd.newPeerRestClients()
3: /go/pkg/mod/github.com/minio/minio@v0.0.0-20201028162317-be7f67268d1e/cmd/notification.go:1292:cmd.NewNotificationSys()
2: /go/pkg/mod/github.com/minio/minio@v0.0.0-20201028162317-be7f67268d1e/cmd/server-main.go:160:cmd.newAllSubsystems()
1: /go/pkg/mod/github.com/minio/minio@v0.0.0-20201028162317-be7f67268d1e/cmd/gateway-main.go:304:cmd.StartGateway()
Thank you to point out to the wrong link for API keys. The usage of API keys is a deprecated mechanism and we want to remove it and leave only access grants.
However, while it is not removed you can configure the Tardigrade S3 Gateway in two different ways:
I’m curious about setting up Mastodon with Storj as file storage as well. Did you manage to setup a working Mastodon server with Storj?
I stumbled across this in the Mastodon docs, which made me wonder if it would work the same with the long share links of Storj out of the box? (My guess: probably not, modifications needed?)
In fact, if you are using external storage like Amazon S3, Minio or Google Cloud, you will by default be serving files from those services’ URLs.
Maybe it would work out of the box when using Storj in combination with something like goofys and letting Mastodon access the local directory managed by goofys like described here for Matrix?
hi @teutates - are you looking for shorter URLs for linksharing? We have made an update that will generate much shorter URLs. If not, could you give me more info on what you’re trying to accomplish?
I am currently also trying to use storj as Object Storage for Mastodon.
Unfortunately i can not access the page tardigate dot io (sorry, only 2 links for new users)
Do you really need some middle-man services to get this running?
Basially yesterday i was following these instructions that are made for Amazaon AWS cybrespace-meta/s3.md at 62ecf7dfc550e9025a49a3457a593ddce6e22b9f · cybrespace/cybrespace-meta · GitHub
I created a bucket and able to sync the files to bucket with aws-cli command line tool.
Configured Mastodon like mentioned in post above
S3_ENABLED=true
S3_BUCKET=test
AWS_ACCESS_KEY_ID=[blubb]
AWS_SECRET_ACCESS_KEY=[blubb]
S3_ENDPOINT=gateway dot storjshare dot io
S3_PROTOCOL=https
As far as I’ve been able to figure out, We need to run our own Gateway in order to get URLs … Which I already did … Then I have to setup Nginx Reverse Proxy … Which I’m trying to do now …