Garage object storage

Has anyone been able to setup and use garage (https://garagehq.deuxfleurs.fr/) as object storage for their instance? I have some questions about the CORS settings described here. Apps (Nextcloud, Peertube...) | Garage HQ

How am I supposed to set up those two aws endpoint commands? aws --endpoint http://s3.garage.localhost s3api put-bucket-cors --bucket peertube-playlists --cors-configuration $CORS

Do I need to input my instance URL here?

Don’t know if you’re still working on this, but I got it working in the last couple days after beating my head against it for a while

This was on ubuntu

  1. installed AWS with apt install
  2. run AWS configure and supply it with the PeerTube key information, garage default region name, and json default output file
  3. not sure if this was needed but it was part of my troubleshooting before I finally beat it. created .awsrc with nano ~/.awsrc and populated it with
export AWS_ACCESS_KEY_ID=[fill in your value]     # put your Key ID here
export AWS_SECRET_ACCESS_KEY=[fill in your value]  # put your Secret key here
export AWS_DEFAULT_REGION='garage'
export AWS_ENDPOINT_URL='http://[localhost or DNS address of Garage server]:3900'

aws --version
  1. add :3900 to the address of the Garage server in the cors command from the Garage supplied PeerTube instructions

export CORS='{"CORSRules":[{"AllowedHeaders":["*"],"AllowedMethods":["GET"],"AllowedOrigins":["*"]}]}'
aws --endpoint http://[localhost or DNS address of Garage server]:3900 s3api put-bucket-cors --bucket peertube-playlists --cors-configuration $CORS
aws --endpoint http://[localhost or DNS address of Garage server]:3900 s3api put-bucket-cors --bucket peertube-videos --cors-configuration $CORS

That finally got the CORS configured properly for me.

Don’t hesitate to contribute to the object storage PeerTube documentation :slight_smile:

I will take another shot at setting this up. Thanks for the pointers @errhead.