1. Linux运行minio
linux安装包下载点
https://dl.minio.io/server/minio/release/linux-amd64/minio
如果linux系统能联网,可直接通过wget命令下载
wget https://dl.minio.io/server/minio/release/linux-amd64/minio
进入minio文件所在位置,然后执行命令:
chmod +x minio
./minio server /mnt/data
minio服务启动成功。
后台运行
nohup /usr/local/bin/minio server /home/minio/data > /home/minio/data/minio.log 2>&1 &
自定义MINIO_ACCESS_KEY和MINIO_SECRET_KEY
export MINIO_ACCESS_KEY=root
export MINIO_SECRET_KEY=root_1234
2. windows运行minio
首先下载安装包,windows下载点
https://dl.minio.io/server/minio/release/windows-amd64/minio.exe
下载结束后,cmd命令行进入minio.exe所在文件夹,然后执行
minio.exe server F:\Data
minio服务启动成功,其中F:\Data可设置成读者本地磁盘任何位置。
3. minio使用
minio服务启动后,默认端口是9000,在命令界面会显示如下信息:
access-key: WHF2WW7QP2DWNQV7MQ63
secret-key: pM3u0Yp+avPuPqPnwu7v+4k4EmlJqQp3dDuNThtg
这些信息需要记住,在登录和项目配置时需要。
如此minio启动成功,然后访问http://127.0.0.1:9000,在登录页输入access-key和secret-key,可直接用浏览器操作minio服务器中的文件库与文件。
4. 依赖jar包引用
确认项目已经引入jar包io.minio
<dependency>
<groupId>io.minio</groupId>
<artifactId>minio</artifactId>
<version>6.0.4</version>
</dependency>
配置文件中已经配置minio服务信息,如下:
minio:
url: http://127.0.0.1:9000
access-key: WHF2WW7QP2DWNQV7MQ63
secret-key: pM3u0Yp+avPuPqPnwu7v+4k4EmlJqQp3dDuNThtg
4.1 创建文件库(bucket)
a)可用浏览器登录http://127.0.0.1:9000,直接创建bucket
b)调用api(参考如下代码)
import io.minio.MinioClient
@Autowired
private MinioClient client;
public void createBucket(String bucketName) {
if (!client.bucketExists(bucketName)) {
client.makeBucket(bucketName);
}
}
4.2 文件上传、预览、下载、删除,参考如下代码
public void putObject(String bucketName, String objectName, InputStream stream, long size, String contextType) throws Exception {
if (StringUtils.isBlank(bucketName)) {
throw new RuntimeException("保存的bucketName为空");
}
createBucket(bucketName);
client.putObject(bucketName, objectName, stream, size, contextType);
}
public InputStream getObject(String bucketName, String objectName) {
return client.getObject(bucketName, objectName);
}
public String getObjectURL(String bucketName, String objectName, Integer expires) {
return client.presignedGetObject(bucketName, objectName, expires);
}
public void removeObject(String bucketName, String objectName) throws Exception {
client.removeObject(bucketName, objectName);
}
其他操作参考io.minio的api:
http://docs.minio.org.cn/docs/master/java-client-quickstart-guide
网友评论