Apache中如何使用minIO
本篇文章为大家展示了Apache中如何使用 minIO,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
为苍梧等地区用户提供了全套网页设计制作服务,及苍梧网站建设行业解决方案。主营业务为成都网站设计、成都网站制作、外贸网站建设、苍梧网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!
docker启动minio
在/home下创建minio的数据和配置目录
启动minio服务
docker run -d -p 9000:9000 --name minio \ --net=host \ -e "MINIO_ACCESS_KEY=AKIAIOSFODNN7EXAMPLE" \ -e "MINIO_SECRET_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY" \ -v /home/minio/data:/data -v /home/minio/config:/root/.minio \ minio/minio server /data
--net暴露ip可以外部访问
MINIO_ACCESS_KEY、MINIO_SECRET_KEY用于浏览器访问服务的账号和密码
-v /home/minio/data:/data 用于挂载容器数据到宿主机 -v /home/minio/config:/root/.minio 用于挂载容器配置到宿主机
浏览器访问minio
http://172.18.0.64:9000/
api使用
安装minio依赖
go get -u github.com/minio/minio-go
编写测试用例
package main import ( "fmt" "github.com/minio/minio-go" "hydrogen.com/library/utils/log" ) const ( endpoint = "172.18.0.64:9000" accessKeyID = "AKIAIOSFODNN7EXAMPLE" secretAccessKey = "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY" useSSL = false ) func upload(){ // 初使化 minio client对象。 minioClient, err := minio.New(endpoint, accessKeyID, secretAccessKey, useSSL) if err != nil { log.Fatal(err) } log.Infof("%s\n", minioClient) // minioClient初使化成功 // 创建一个叫mymusic的存储桶。 bucketName := "hydrogen" location := "cn-north-1" err = minioClient.MakeBucket(bucketName, location) if err != nil { // 检查存储桶是否已经存在。 exists, err := minioClient.BucketExists(bucketName) if err == nil && exists { log.Infof("We already own %s\n", bucketName) } else { log.Fatal(err) } } log.Infof("Successfully created %s\n", bucketName) // 上传一个zip文件。 objectName := "iris.txt" filePath := "E:/iris.txt" contentType := "text/plain" // 使用FPutObject上传一个zip文件。 n, err := minioClient.FPutObject(bucketName, objectName, filePath, minio.PutObjectOptions{ContentType:contentType}) if err != nil { log.Fatal(err) } log.Infof("Successfully uploaded %s of size %d\n", objectName, n) } func getObject(){ // 初使化 minio client对象。 minioClient, err := minio.New(endpoint, accessKeyID, secretAccessKey, useSSL) if err != nil { log.Fatal(err) } log.Infof("%s\n", minioClient) // minioClient初使化成功 // 创建一个叫mymusic的存储桶。 bucketName := "hydrogen" objectName := "iris.txt" object, err := minioClient.GetObject(bucketName, objectName, minio.GetObjectOptions{}) if err != nil { fmt.Println(err) return } log.Infof("%s\n", object) } func getFObject(){ // 初使化 minio client对象。 minioClient, err := minio.New(endpoint, accessKeyID, secretAccessKey, useSSL) if err != nil { log.Fatal(err) } log.Infof("%s\n", minioClient) // minioClient初使化成功 // 创建一个叫mymusic的存储桶。 bucketName := "hydrogen" objectName := "iris.txt" filePath := "E:/test/iris.txt" err = minioClient.FGetObject(bucketName, objectName, filePath, minio.GetObjectOptions{}) if err != nil { fmt.Println(err) return } } func main() { //上传 upload() //下载到本地 getFObject() }
上述内容就是Apache中如何使用 minIO,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注创新互联行业资讯频道。
当前文章:Apache中如何使用minIO
网站URL:http://pwwzsj.com/article/ppessj.html