@@ -12,15 +12,50 @@ To enable S3 support on your ship you'll need to first set up a bucket, and then
13### Bucket Setup
13### Bucket Setup
15+We recommend DigitalOcean's Spaces, but any s3 provider that supports signature v2 should work.
15−If you’re using AWS, it will have to support signature v2, not v4. We've found DigitalOcean's Spaces to work well also. The bucket has to be publicly readable, allow CORS from `*` origins, allow GET and PUT methods, and allow `*` headers. Your provider should have details on setting access permissions and CORS.
17+The bucket has to be publicly readable, allow CORS from `*` origins, allow GET and PUT methods, and allow `*` headers. Specific instructions for DigitalOcean are below.
19+In DigitalOcean you'll want to log into your existing account or create a new one if you don't already have one. You can use DigitalOcean for your S3 host even if your Urbit planet is hosted elsewhere.
21+Click the green Create button at the top of the project page, then click Spaces.
23+Make the following selections:
24+- Select the datacenter region closest to you
25+- Restrict File Listing (leave this as the default)
26+- Choose a unique name (this is your bucket name)
27+- Select a project (or leave the default if you don't have multiple)
29+Once you've created your space you'll want to navigate to its settings in DigitalOcean.
31+Then you'll want to set the CORS Configurations as specified above, this should look like the following image (your endpoint will vary depending upon region).
32+
33+
34+Finally you'll need to create an API key so you can configure your ship to have access to your newly created s3 bucket.
36+Click API in the bottom left of the DigitalOcean navigation bar on the left side of the webpage.
38+Generate a new token, you'll need to copy the access key and secret. Don't navigate away from this page as the secret will only be shown when it is initially created.
40+Now that we have your S3 ready, we can update the information on your ship.
17### Add your credentials: Landscape
42### Add your credentials: Landscape
19−Navigate to your `https://<your-ship-url>/~settings#s3`, or click your sigil in the upper-right corner of the window. Fill out the **S3 Credentials** and **S3 Buckets** sections and you're all set!
44+Navigate to your `https://<your-ship-url>/~settings#s3`, or click your sigil in the upper-right corner of the window and navigate to System Preferences -> Remote Storage.
46+The Endpoint depends on the region you selected, but can be found in the settings for your space shown in the image above (in that image we're using the San Francisco region).
48+The Access Key ID and Secret Access Key is the API key we generated. Put each one in the correct field and save.
50+The S3 Bucket is the name of your digital ocean space. Once you've added that you'll also need to click "Make Active" from the drop down menu.
52+Once all of that's complete you should be good to go! Test that things are working by attempting to attach or send and image via chat. It should work. You can manage your images by logging into Digital Ocean and looking at the folder in your newly created space. You can use your same space for multiple urbit IDs by creating new API keys. Each ID will create a new directory within that space using its name by default.
54+To manage your S3 inventory on your urbit, install Silo: web+urbitgraph://~dister-nocsyx-lassul/silo
21### Add your credentials: Dojo
56### Add your credentials: Dojo
23−Once you have gotten your bucket setup, poke the `s3-store` on your ship with your details. You can do this in Dojo or in web Dojo.
58+Alternatively to the instructions above, you can run these dojo commands instead of updating system preferences. If you followed the instructions above you should *not* do this.
26:s3-store|set-endpoint 'endpoint.mys3provider.com'
61:s3-store|set-endpoint 'endpoint.mys3provider.com'
@@ -33,6 +68,6 @@ Once you have gotten your bucket setup, poke the `s3-store` on your ship with yo
34Done! If you need to peek at s3-store’s state, you can always run :s3-store +dbug (inside Dojo, not web Dojo, unfortunately). You’ll see the additional functionality appear in Groups and Chat.
69Done! If you need to peek at s3-store’s state, you can always run :s3-store +dbug (inside Dojo, not web Dojo, unfortunately). You’ll see the additional functionality appear in Groups and Chat.
36−### Hosting your own S3 solution
71+### Hosting your own S3 solution (Advanced)
38−If you'd prefer to host your own S3-compatible storage solution, have a look at [Self-hosting S3 Storage with MinIO](/using/running/minio).
73+If you'd prefer to host your own S3-compatible storage solution locally, have a look at [Self-hosting S3 Storage with MinIO](/using/running/minio).