Windows环境使用Minio如此简单

Windows环境下使用Minio对象存储真的好简单

很久很久以前,开发个Web程序,上传文件一直是在单个服务器上。后来,微服务流行后,再用单个服务器存储文件(配置虚拟目录方式)或者配置个FTP服务端再在程序中进行ftp的上传,总感觉没那么优雅~~-_-! 有一天Minio出现了,完美解决分布式存储文件存储的问题,而且足够轻量。

1、下载及安装

官网地址:https://min.io/download#/windows
分别下载服务端、客户端:
分别下载服务端和客户端

1.1、运行

1、在D盘建立文件夹Minio(d:/Minio),创建子文件夹进行存储(d:/Minio/MinioData)
2、把下载的服务端:minio.exe、客户端:mc.exe,拷贝到d:/Minio下
3、按住Shift再点击 鼠标右键,打开PowerShell 或Terminal

  • PowerShell运行:.\minio.exe server d:\Minio\MinioData
    4、Terminal运行:minio.exe server d:\Minio\MinioData
    运行minio

1.2、配置

点击:http://127.0.0.1:9000,或者直接浏览器输入打开网页,进入登录界面

  • 默认账号:minioadmin
  • 默认密码:minioadmin
    在这里插入图片描述
1.2.1、创建桶

在这里插入图片描述
点击“Create Bucket +”按钮,设置桶名并创建
如需要特定某个用户访问,可以点击 “Identity” -> “Create User +”,创建用户
在这里插入图片描述
使用API接入Minio需要创建AccessKey,点击“Access Keys” -> “Create access key +”,进行创建,默认随机一对,也可自行设置
在这里插入图片描述

如果嫌每次手动运行minio.exe麻烦,也可以花几分钟做成Windows服务,开机自动运行

  • 下载WinSW,下载地址:https://github.com/winsw/winsw/releases
    在这里插入图片描述
  • 拷贝到D:\Minio\,重命名成你想要的服务,如:minio-server.exe
  • 同目录下创建配置文件,minio-server.xml(注意需要同名)
  • 配置minio-server.xml文件
<service>
	<id>minio-server</id>
	<name>minio-server</name>
	<!-- 如果不能启动,可将description中的中文去除 -->
	<description>Minio文件存储服务</description>
	<startmode>Automatic</startmode>
	<!-- 也可以设置环境变量 -->
	<env name="HOME" value="%BASE%"/>
	<executable>%BASE%\minio.exe</executable>
	<arguments>server "%BASE%\MinioData"</arguments>
	<!-- 配置日志 -->
	<logpath>%BASE%\logs</logpath>
	<log mode="roll-by-size-time">
    	<sizeThreshold>10240</sizeThreshold>
      	<pattern>yyyyMMdd</pattern>
	    <autoRollAtTime>00:00:00</autoRollAtTime>
      	<zipOlderThanNumDays>5</zipOlderThanNumDays>
      	<zipDateFormat>yyyyMMdd</zipDateFormat>
    </log>
</service>

就可以安装成服务了

  • 安装服务:minio-server.exe install

  • 启动服务:minio-server.exe start

  • 停止服务:minio-server.exe stop

  • 卸载服务:minio-server.exe uninstall

  • 如果想改登录账号及密码,可以新建一个bat文件,内容为:

set MINIO_ACCESS_KEY=admin
set MINIO_SECRET_KEY=12345678
minio.exe server

如果需要特定的端口,也可以这样:

set MINIO_ACCESS_KEY=admin
set MINIO_SECRET_KEY=12345678
minio.exe server --address:9991 d:\Minio\MinioData

再配合WinSW就可以实现了

<service>
	<id>minio-server</id>
	<name>minio-server</name>
	<!-- 如果不能启动,可将description中的中文去除 -->
	<description>Minio文件存储服务</description>
	<startmode>Automatic</startmode>
	<executable>run.bat</executable>
</service>

在这里插入图片描述
这就已经成功安装服务了
卸载服务
在这里插入图片描述
当然你也可以用WinSW把java -jar变成一个Windows服务

1.3、Minio支持多种语言的SDK

链接:https://min.io/docs/minio/linux/developers/minio-drivers.html?ref=docs

1.3.1、Java中使用

Maven引用

<dependency>
	<groupId>io.minio</groupId>
	<artifactId>minio</artifactId>
	<version>8.5.7</version>
</dependency>

Java中使用

import io.minio.BucketExistsArgs;
import io.minio.MakeBucketArgs;
import io.minio.MinioClient;
import io.minio.UploadObjectArgs;
import io.minio.errors.MinioException;
import java.io.IOException;
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;

public class FileUploader {
  public static void main(String[] args)
      throws IOException, NoSuchAlgorithmException, InvalidKeyException {
    try {
      // Create a minioClient with the MinIO server playground, its access key and secret key.
      MinioClient minioClient =
          MinioClient.builder()
              .endpoint("https://play.min.io")
              .credentials("Q3AM3UQ867SPQQA43P2F", "zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG")
              .build();

      // Make 'asiatrip' bucket if not exist.
      boolean found =
          minioClient.bucketExists(BucketExistsArgs.builder().bucket("asiatrip").build());
      if (!found) {
        // Make a new bucket called 'asiatrip'.
        minioClient.makeBucket(MakeBucketArgs.builder().bucket("asiatrip").build());
      } else {
        System.out.println("Bucket 'asiatrip' already exists.");
      }

      // Upload '/home/user/Photos/asiaphotos.zip' as object name 'asiaphotos-2015.zip' to bucket
      // 'asiatrip'.
      minioClient.uploadObject(
          UploadObjectArgs.builder()
              .bucket("asiatrip")
              .object("asiaphotos-2015.zip")
              .filename("/home/user/Photos/asiaphotos.zip")
              .build());
      System.out.println(
          "'/home/user/Photos/asiaphotos.zip' is successfully uploaded as "
              + "object 'asiaphotos-2015.zip' to bucket 'asiatrip'.");
    } catch (MinioException e) {
      System.out.println("Error occurred: " + e);
      System.out.println("HTTP trace: " + e.httpTrace());
    }
  }
}

其他自行摸索了,祝用餐愉快!

  • 4
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Windows Minio客户端使用手册 Minio是一种开源的分布式对象存储系统,可以存储海量数据并提供高可靠性和高可扩展性。它可以在各种环境下运行,如公有云、私有云或混合云中。在Windows使用Minio客户端可以方便地上传、下载和管理对象存储数据。 一、安装和配置Minio客户端 1.在Minio网站(https://min.io/download#/windows)上下载适合您Windows版本的Minio客户端。 2.将下载的Minio客户端安装包解压到您选择的文件夹中。 3.配置Minio客户端与服务器连接,输入以下命令:minio.exe config host add <别名> <服务器> <访问密钥> <秘钥>. <别名>为您与服务器连接的别名,<服务器>为Minio服务器的域名或IP地址,<访问密钥>和<秘钥>是访问Minio服务器的认证信息。 4.设置环境变量,以防止在命令提示符中输入完整的路径以启动Minio.exe。将Minio.exe的目录添加到PATH环境变量中,这将使您能够从任何位置运行Minio.exe。 二、使用Minio客户端上传和下载文件 1.使用Minio客户端上传文件。运行以下命令:minio.exe cp <本地文件> <别名>/<桶名>/<路径/文件名>。 <本地文件>是您要上传的文件,<别名>/<桶名>/<路径/文件名>是您要将文件上传到的Minio存储桶地址。 2.使用Minio客户端下载文件。运行以下命令:minio.exe cp <别名>/<桶名>/<路径/文件名> <本地文件>。 <别名>/<桶名>/<路径/文件名>是您要从Minio存储桶下载的文件地址,<本地文件>是您要将文件下载到的本地文件地址。 三、管理Minio客户端对象存储 1.列出所有Minio存储桶。运行以下命令:minio.exe ls <别名> <别名>是您要列出存储桶的Minio服务器别名。 2.创建Minio存储桶。运行以下命令:minio.exe mb <别名>/<桶名> <别名>/<桶名>是您要创建的Minio存储桶地址。 3.删除Minio存储桶。运行以下命令:minio.exe rb <别名>/<桶名> <别名>/<桶名>是您要删除的Minio存储桶地址。 总结: 安装Minio客户端可以方便地上传、下载和管理您的对象存储数据。通过简单的配置步骤,您可以轻松连接到Minio服务器。使用Minio客户端命令行实用程序来完成各种管理任务,例如列出、创建和删除存储桶。在日常工作中合理使用Minio客户端可以提高工作效率,大大减少了管理和维护数据的成本。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值