• MinIO安装及使用教程(windows) 及java 上传 下载 windows minio 修改密码修改 MINIO_ACCESS_KEY minio开机启动


    转载:https://www.cnblogs.com/q149072205/p/12851667.html

    1.下载安装地址(我下的是windows版本):https://min.io/download#/windows

    2.新建一个目录存放minio文件,我建的文件名叫 D:minioData,CMD进入刚刚下载的minio.exe所在目录,

     直接在cmd下运行:minio.exe server D:minioData

    启动成功以后如下图(启动就是这么简单),最后红色字提示修改access Key和Secret Key  (默认全是minioadmin)

    3.浏览器打开 http://127.0.0.1:9000/  输入access Key和Secret Key  (全是minioadmin)

    登录进来是这样的,啥都没有。

     4.上传文件,先要新建一个bucket (中文是桶的意思,我们理解为文件夹),点右下角有一个+号,选Create bucket ,

    再上传一个文件,如下图,表示成功了。

     

     5.用java测试上传功能:

    代码如下:

    复制代码
    import io.minio.MinioClient;
    import io.minio.ObjectStat;
    import io.minio.errors.MinioException;
    import org.xmlpull.v1.XmlPullParserException;
    
    import java.io.IOException;
    import java.security.InvalidKeyException;
    import java.security.NoSuchAlgorithmException;
    
    public class Program {
        public static void main(String[] args){
            System.out.println("hello java");
            try {
                test1();
            }catch (Exception e){
                System.out.println("test1错误: " + e);
            }
    
        }
    
    
        public static void test1()throws NoSuchAlgorithmException, IOException, InvalidKeyException, XmlPullParserException {
    
            try {
                // 参数为:图床,账号,密码
                MinioClient minioClient = new MinioClient("http://127.0.0.1:9000", "minioadmin", "minioadmin");
    
                //boolean v=minioClient.bucketExists("test1");
                // 检查文件夹是否已经存在
                boolean isExist = minioClient.bucketExists("test1");
                if(isExist) {
                    System.out.println("test1文件夹已经存在了");
                }
                else {
                    // 创建一个名为managertest的文件夹
                    System.out.println("test1文件夹还没存在");
                    minioClient.makeBucket("test1");
                }
    
                // 使用putObject上传一个文件到文件夹中。
                //参数为:文件夹,要存成的名字,要存的文件 (如果文件名相同将会复盖原来的文件)
                minioClient.putObject("test1","tujpg2.png", "E:/Convert/testAllFile/tujpg2.jpg");
                System.out.println("上传成功了");
    
    
                //使用getObject获取一个文件
                // 调用statObject()来判断对象是否存在。
                ObjectStat file=minioClient.statObject("test1", "tujpg2.png");
                System.out.println("文件名:"+file.name()+",文件大小:"+file.length());
    
                // 获取1.png的流并保存到photo.png文件中。
                //参数为:文件夹,要获得的文件,要写入的文件
                minioClient.getObject("test1", "tujpg2.png", "E:/Convert/testAllFile/tujpg_minio.png");
                System.out.println("下载成功了");
    
            } catch(MinioException e) {
                System.out.println("错误: " + e);
            }
        }
    }
    复制代码

    6.运行以后,test是开始手动点右下角创建的,test1是代码创建的,里面的文件也是代码上传的。如下图:

     想要预览,点文件右边的三点。再点中间的按钮,就可查看,

    如果想要分享给别人,点第一个按钮,生成一个连接可以复制粘贴发给别人查看

    浏览器直接 http://127.0.0.1:9000/test1/tujpg2.png  访问会跳到登录页,因为没有登录,想要实现这个功能的话

    点左边文件夹名上会出现三点,点三个点。再选Edit policy

    选择Read and Write 点Add

     

     

     浏览器输入:http://127.0.0.1:9000/test1/tujpg2.png  就不需要权限可以直接在浏览器访问图片了,如下图

     

    windows minio 修改密码修改 MINIO_ACCESS_KEY

    使用自己的minio的密码启动,新建run.bat文件代码如下

    set MINIO_ACCESS_KEY=admin
    set MINIO_SECRET_KEY=12345678
    minio.exe server D:minioData

    修改老的minio密码,新建runEditPassword.bat代码如下,运行runEditPassword.bat以后再运行run.bat文件

    set MINIO_ACCESS_KEY=admin
    set MINIO_SECRET_KEY=11111111
    set MINIO_ACCESS_KEY_OLD=admin
    set MINIO_SECRET_KEY_OLD=12345678
    minio.exe server D:minioData

    Minio创建BucketName 报错,提示The specified bucket is not valid。

    这个应该是Minio 做了限制,不允许bucketName有大写字母、下划线、特殊字符 如@#等。

    把bucketName换成小写、数字或者小写+数字组合就可以了。

     minio开机启动,先看一下文件内容如下:

    添加服务

    需要借助"Windows Service Wrapper"小工具,下载地址: http://repo.jenkins-ci.org/releases/com/sun/winsw/winsw/1.18/winsw-1.18-bin.exe

    把winsw-1.18-bin.exe改名为minio-service.exe

    新建 minio-service.xml 内容如下

    复制代码
    <service>
      <id>minio</id>
      <name>MinIO Service</name>
      <description>MinIO is a High Performance Object Storage</description>
      <logpath>D:miniologs</logpath>
      <log mode="roll-by-size">
        <sizeThreshold>10240</sizeThreshold>
        <keepFiles>8</keepFiles>
      </log>
      <executable>D:minio
    un.bat</executable>
    </service>
    复制代码

    新建run.bat文件,内容如下:

    set MINIO_ACCESS_KEY=admin
    set MINIO_SECRET_KEY=12345678
    minio.exe server D:minioData
    带密码带自己定义端口9999启动命令:
    set MINIO_ACCESS_KEY=admin
    set MINIO_SECRET_KEY=12345678
    minio.exe server --address :9999 D:minioData

    用来把minio.exe当成服务开机启动,以管理员身份运行cmd,使用安装服务命令如下:

    安装服务 minio-service.exe install  (cmd下执行这行)
    卸载服务 minio-service.exe uninstall

    进入系统服务,启动服务即可

    PS:很多人问我,为什么我登进去是 minio console版本的?!界面都不一样。

    这个是由于版本的问题。

    我目前使用的版本是:

    <dependency>
        <groupId>io.minio</groupId>
        <artifactId>minio</artifactId>
        <version>8.2.1</version>
    </dependency>
  • 相关阅读:
    ACM解题之快速输出杨辉三角形(前68行)
    ACM解题之素矩阵
    ACM解题之回文序列
    python批量修改文件名
    HTML页面导航栏页脚不动,变换中间部分
    VS2013正则表达式应用示例
    <<数学传奇>>概述
    C#在不同平台下DLL的引用问题
    在C++中实现类似Java的“synchronized”
    VS编译完成后自动复制到远程机器
  • 原文地址:https://www.cnblogs.com/hanjun0612/p/14868054.html
Copyright © 2020-2023  润新知