mirror of
https://github.com/pgsty/minio.git
synced 2026-08-09 07:43:29 +03:00
aaf97ea02c
- New config format.
```
{
"version": "3",
"address": ":9000",
"backend": {
"type": "fs",
"disk": "/path"
},
"credential": {
"accessKey": "WLGDGYAQYIGI833EV05A",
"secretKey": "BYvgJM101sHngl2uzjXS/OBF/aMxAN06JrJ3qJlF"
},
"region": "us-east-1",
"logger": {
"file": {
"enable": false,
"fileName": "",
"level": "error"
},
"syslog": {
"enable": false,
"address": "",
"level": "debug"
},
"console": {
"enable": true,
"level": "fatal"
}
}
}
```
New command lines in lieu of supporting XL.
Minio initialize filesystem backend.
~~~
$ minio init fs <path>
~~~
Minio initialize XL backend.
~~~
$ minio init xl <url1>...<url16>
~~~
For 'fs' backend it starts the server.
~~~
$ minio server
~~~
For 'xl' backend it waits for servers to join.
~~~
$ minio server
... [PROGRESS BAR] of servers connecting
~~~
Now on other servers execute 'join' and they connect.
~~~
....
minio join <url1> -- from <url2> && minio server
minio join <url1> -- from <url3> && minio server
...
...
minio join <url1> -- from <url16> && minio server
~~~
Minio Go Library for Amazon S3 Compatible Cloud Storage 
Description
Minio Go library is a simple client library for S3 compatible cloud storage servers. Supports AWS Signature Version 4 and 2. AWS Signature Version 4 is chosen as default.
List of supported cloud storage providers.
-
AWS Signature Version 4
- Amazon S3
- Minio
-
AWS Signature Version 2
- Google Cloud Storage (Compatibility Mode)
- Openstack Swift + Swift3 middleware
- Ceph Object Gateway
- Riak CS
Install
If you do not have a working Golang environment, please follow Install Golang.
$ go get github.com/minio/minio-go
Example
ListBuckets()
This example shows how to List your buckets.
package main
import (
"log"
"github.com/minio/minio-go"
)
func main() {
// Requests are always secure (HTTPS) by default. Set insecure=true to enable insecure (HTTP) access.
// This boolean value is the last argument for New().
// New returns an Amazon S3 compatible client object. API copatibality (v2 or v4) is automatically
// determined based on the Endpoint value.
s3Client, err := minio.New("s3.amazonaws.com", "YOUR-ACCESS-KEY-HERE", "YOUR-SECRET-KEY-HERE", false)
if err != nil {
log.Fatalln(err)
}
buckets, err := s3Client.ListBuckets()
if err != nil {
log.Fatalln(err)
}
for _, bucket := range buckets {
log.Println(bucket)
}
}
Documentation
Examples
Bucket Operations.
- MakeBucket(bucketName, location) error
- BucketExists(bucketName) error
- RemoveBucket(bucketName) error
- ListBuckets() []BucketInfo
- ListObjects(bucketName, objectPrefix, recursive, chan<- struct{}) <-chan ObjectInfo
- ListIncompleteUploads(bucketName, prefix, recursive, chan<- struct{}) <-chan ObjectMultipartInfo
Object Operations.
- PutObject(bucketName, objectName, io.Reader, contentType) error
- GetObject(bucketName, objectName) (*Object, error)
- StatObject(bucketName, objectName) (ObjectInfo, error)
- RemoveObject(bucketName, objectName) error
- RemoveIncompleteUpload(bucketName, objectName) <-chan error
File Object Operations.
- FPutObject(bucketName, objectName, filePath, contentType) (size, error)
- FGetObject(bucketName, objectName, filePath) error
Presigned Operations.
- PresignedGetObject(bucketName, objectName, time.Duration, url.Values) (string, error)
- PresignedPutObject(bucketName, objectName, time.Duration) (string, error)
- PresignedPostPolicy(NewPostPolicy()) (map[string]string, error)
Bucket Policy Operations.
- SetBucketPolicy(bucketName, objectPrefix, BucketPolicy) error
- GetBucketPolicy(bucketName, objectPrefix) (BucketPolicy, error)
- RemoveBucketPolicy(bucketName, objectPrefix) error