mirror of
https://github.com/minio/minio.git
synced 2024-12-26 15:15:55 -05:00
fa4d627b57
- B2 does actually return an MD5 hash for newly uploaded objects so we can use it to provide better compatibility with S3 client libraries that assume the ETag is the MD5 hash such as boto. - depends on change in blazer library. - new behaviour is only enabled if MinIO's --compat mode is active. - behaviour for multipart uploads is unchanged (works fine as is).
2.5 KiB
2.5 KiB
MinIO B2 Gateway
MinIO Gateway adds Amazon S3 compatibility to Backblaze B2 Cloud Storage.
Run MinIO Gateway for Backblaze B2 Cloud Storage
Please follow this guide to create an account on backblaze.com to obtain your access credentials for B2 Cloud storage.
Using Docker
docker run -p 9000:9000 --name b2-s3 \
-e "MINIO_ACCESS_KEY=b2_account_id" \
-e "MINIO_SECRET_KEY=b2_application_key" \
minio/minio gateway b2
Using Binary
export MINIO_ACCESS_KEY=b2_account_id
export MINIO_SECRET_KEY=b2_application_key
minio gateway b2
Test using MinIO Browser
MinIO Gateway comes with an embedded web based object browser. Point your web browser to http://127.0.0.1:9000 to ensure that your server has started successfully.
Test using MinIO Client mc
mc
provides a modern alternative to UNIX commands such as ls, cat, cp, mirror, diff etc. It supports filesystems and Amazon S3 compatible cloud storage services.
Configure mc
mc config host add myb2 http://gateway-ip:9000 b2_account_id b2_application_key
List buckets on Backblaze B2
mc ls myb2
[2017-02-22 01:50:43 PST] 0B ferenginar/
[2017-02-26 21:43:51 PST] 0B my-bucket/
[2017-02-26 22:10:11 PST] 0B test-bucket1/
Known limitations
Gateway inherits the following B2 limitations:
- No support for CopyObject S3 API (yet).
- No support for CopyObjectPart S3 API (yet).
- Only read-only bucket policy supported at bucket level, all other variations will return API Notimplemented error.
- DeleteObject() might not delete the object right away on Backblaze B2, so you might see the object immediately after a Delete request.
- Multipart uploads don't return an MD5-hash ETag, not even with the
--compat
flag.
Other limitations:
- Bucket notification APIs are not supported.
- The PutObject S3 API only returns the md5sum of an uploaded file as it's ETag response when minio is started in
--compat
mode. Don't use this unless you are stuck with a client library where this check cannot be turned off (e.g. boto).