From 8c2fc6daf8bdb29683a96bab4c38ad655461871f Mon Sep 17 00:00:00 2001 From: Nick Craig-Wood Date: Mon, 11 Jul 2016 12:12:28 +0100 Subject: [PATCH] s3: Add instructions on how to use rclone with minio --- docs/content/s3.md | 59 +++++++++++++++++++++++++++++++++++++++++++++- s3/s3.go | 2 +- 2 files changed, 59 insertions(+), 2 deletions(-) diff --git a/docs/content/s3.md b/docs/content/s3.md index e66da69b5..017b91dd0 100644 --- a/docs/content/s3.md +++ b/docs/content/s3.md @@ -1,7 +1,7 @@ --- title: "Amazon S3" description: "Rclone docs for Amazon S3" -date: "2014-04-26" +date: "2016-07-11" --- Amazon S3 @@ -281,3 +281,60 @@ removed). Because this is a json dump, it is encoding the `/` as `\/`, so if you use the secret key as `xxxxxx/xxxx` it will work fine. + +### Minio ### + +[Minio](https://minio.io/) is an object storage server built for cloud application developers and devops. + +It is very easy to install and provides an S3 compatible server which can be used by rclone. + +To use it, install Minio following the instructions from the web site. + +When it configures itself Minio will print something like this + +``` +AccessKey: WLGDGYAQYIGI833EV05A SecretKey: BYvgJM101sHngl2uzjXS/OBF/aMxAN06JrJ3qJlF Region: us-east-1 + +Minio Object Storage: + http://127.0.0.1:9000 + http://10.0.0.3:9000 + +Minio Browser: + http://127.0.0.1:9000 + http://10.0.0.3:9000 +``` + +These details need to go into `rclone config` like this. Note that it +is important to put the region in as stated above. + +``` +env_auth> 1 +access_key_id> WLGDGYAQYIGI833EV05A +secret_access_key> BYvgJM101sHngl2uzjXS/OBF/aMxAN06JrJ3qJlF +region> us-east-1 +endpoint> http://10.0.0.3:9000 +location_constraint> +server_side_encryption> +``` + +Which makes the config file look like this + +``` +[minio] +env_auth = false +access_key_id = WLGDGYAQYIGI833EV05A +secret_access_key = BYvgJM101sHngl2uzjXS/OBF/aMxAN06JrJ3qJlF +region = us-east-1 +endpoint = http://10.0.0.3:9000 +location_constraint = +server_side_encryption = +``` + +Minio doesn't support all the features of S3 yet. In particular it +doesn't support MD5 checksums (ETags) or metadata. This means rclone +can't check MD5SUMs or store the modified date. However you can work +around this with the `--size-only` flag of rclone. + +So once set up, for example to copy files into a bucket + + rclone --size-only copy /path/to/files minio:bucket diff --git a/s3/s3.go b/s3/s3.go index 4ee40e73d..3e80cb656 100644 --- a/s3/s3.go +++ b/s3/s3.go @@ -42,7 +42,7 @@ import ( func init() { fs.Register(&fs.RegInfo{ Name: "s3", - Description: "Amazon S3 (also Dreamhost, Ceph)", + Description: "Amazon S3 (also Dreamhost, Ceph, Minio)", NewFs: NewFs, // AWS endpoints: http://docs.amazonwebservices.com/general/latest/gr/rande.html#s3_region Options: []fs.Option{{