Skip to content

Quickstart

Ben McClelland edited this page Apr 21, 2026 · 7 revisions

Download Gateway

Download release binary

Download a release binary from Releases

or Build from source

This assumes you have a Go compiler installed

  • Clone repo
git clone https://github.com/versity/versitygw.git
  • Build project
cd versitygw
make

Run Gateway

Create backend directory if it doesn't already exist

Enabling versioning is optional, but included in the examples. The examples also show how to enable the optional web ui on port 8080.

mkdir /tmp/vgw /tmp/vers

Start Gateway

Set the root account credentials with the ROOT_ACCESS_KEY and ROOT_SECRET_KEY environment variables. These can alternatively be set with --access and --secret cli options.
Examples:

ROOT_ACCESS_KEY=myaccess ROOT_SECRET_KEY=mysecret ./versitygw --iam-dir /tmp/vgw --webui :8080 posix --versioning-dir /tmp/vers /tmp/vgw
versitygw --access myaccess --secret mysecret --iam-dir /tmp/vgw --webui :8080 posix posix --versioning-dir /tmp/vers /tmp/gw

Test client interactions

Using aws cli

Set client credentials to root account.

export AWS_ACCESS_KEY_ID=myaccess
export AWS_SECRET_ACCESS_KEY=mysecret

Create a bucket. Replace 127.0.0.1 with server IP if gateway running on different host.

aws --endpoint-url http://127.0.0.1:7070 s3 mb s3://mybucket

Upload a file "localfile" to the S3 gateway calling it "/test/file" within the bucket we just created.

aws --endpoint-url http://127.0.0.1:7070 s3 cp localfile s3://mybucket/test/file

Test WebUI

Open a browser on http://127.0.0.1:8080 and login with acesskey/secretkey credentials (myaccess/mysecret).

Clone this wiki locally