Docker 安装并测试 MinIO
创作时间:
作者:
@小白创作中心
Docker 安装并测试 MinIO
引用
CSDN
1.
https://blog.csdn.net/weixin_45100444/article/details/139261852
Docker 安装 MinIO
1. 下载 MinIO
docker pull minio/minio
2. 检查当前下载的所有镜像
docker images
3. 创建目录
(1)存放配置
mkdir -p /usr/myapp/minio/config
(2)存储上传文件的目录
mkdir -p /usr/myapp/minio/data
4. 创建 MinIO 容器并运行
docker run -d \
--name minio \
--restart=always \
-p 9000:9000 \
-p 9001:9001 \
--privileged=true \
-e "MINIO_ROOT_USER=maple" \
-e "MINIO_ROOT_PASSWORD=qwe123..." \
-v /usr/myapp/minio/data:/data \
-v /usr/myapp/minio/config:/root/.minio \
minio/minio server \
--console-address ":9000" \
--address ":9001" /data
第一个 -p 9000:9000
是宿主机(物理机)端口号;第二个 -p 9001:9001
是容器内的端口号。目的是为了让外部访问容器内的服务时,可以通过宿主机的端口进行访问。
MINIO_ACCESS_KEY:账号(长度 ≥ 5 位)
MINIO_SECRET_KEY:密码(长度 ≥ 8 位)
5. 测试 MinIO 是否安装成功
虚拟机地址 + 端口号(9000)
http://192.168.101.129:9000/
6. 登录并测试 MinIO
(1)创建一个 Bucket
这里命名的名字,不要太复杂,因为上传文件的时候用得到。
(2)创建一个 Access Key
点击create
复制它俩 Access Key 与 Secret Key,把它们复制进记事本里,等会儿测试的时候需要用到它俩
(3)开始编写测试文件
新建一个 Maven 项目,因为需要导入 Maven 依赖,如下是 pom.xml
<dependencies>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp</artifactId>
<version>4.9.0</version>
</dependency>
<dependency>
<groupId>io.minio</groupId>
<artifactId>minio</artifactId>
<version>8.4.2</version>
<exclusions>
<exclusion>
<artifactId>okhttp</artifactId>
<groupId>com.squareup.okhttp3</groupId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
以下是 Java 代码(只需要一个 main 方法就够了):
package net.ibp;
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("http://192.168.101.129:9001")//这里的ip和端口就是你访问minio的ip,端口号是刚才安装minio时配置的 9001,而并非物理机访问的端口号
.credentials("U4J107ZkgoLxreaxs9hT", "fUGpLNKhKEMnPuzftCF4mTslK6CIYFJ6m74nxxWu")//这里的accessKey和secretKey就是我刚才让你复制保存的东西
.build();
// Make 'photos' bucket if not exist.
boolean found = minioClient.bucketExists(BucketExistsArgs.builder().bucket("photos").build());//这里的photos就是让你刚才新建Bucket时的名字,让你不要起复杂的原因就在这里
if (!found) {
// Make a new bucket called 'photos'.
minioClient.makeBucket(MakeBucketArgs.builder().bucket("photos").build());//这里也是桶(Bucket)的名字
} else {
System.out.println("Bucket 'photos' already exists.");//这里也是桶的名字
}
// Upload '/home/user/Photos/asiaphotos.zip' as object name 'asiaphotos-2015.zip' to bucket
// 'asiatrip'.
minioClient.uploadObject(
UploadObjectArgs.builder()
.bucket("photos")//这里也是桶的名字
.object("flower.png")//这里是要上传文件的名字
.filename("E:\\Maple\\Pictures\\Saved Pictures\\flower.png")//上传的文件的路径
.build());
System.out.println("'E:\\Maple\\Pictures\\Saved Pictures\\flower.png' is successfully uploaded as " + "object 'flower.png' to bucket 'photos'.");//这里的路径名、文件名和桶的名字别忘了改成你自己的
} catch (MinioException e) {
System.out.println("Error occurred: " + e);
System.out.println("HTTP trace: " + e.httpTrace());
}
}
}
(4)上传成功
(5)在 MinIO 中查看
进去之后点击刷新(refresh)
至此结束!
热门推荐
声压级(SPL):定义、计算及应用
混凝土的组成成分是什么?这些成分对其性能有何影响?
干货教程!4G模组SIM双卡切换,建议收藏!
芹菜炒肉,不仅色香味俱全,而且营养丰富,是家庭餐桌上的常客
低糖低脂的甜品,真的更健康吗?
跨境电商合规运营的法律要求有哪些
做梦梦见订婚是什么意思
GBIP连接NI后扫描不到仪器的故障排查指南
如何跨省异地报警
洋房和别墅的区别和其特点
公务员视力要求解读:视力是否成为入公职门槛的限制因素?
情人节玫瑰涨价背后的秘密!鲜花经济学的遐想!
低首付购房政策:机遇与风险并存
走进虚拟课堂:3D技术在口腔解剖教学中的应用与创新
诉讼文书送达地址确认书的格式与相关规定
2025年公务员视力要求及单眼失明考情分析
SD卡备份和烧录Ubuntu 20.04镜像的详细步骤
猪油,到底是人间“美味”,还是隐形“杀手”?是时候知道真相了
新车到手即贬值,中国车主换车快?汽车真的开15年就不能开了吗?
Transformer模型探索01:解锁Transformer的多元应用场景
袁世凯:功过交织的传奇人生
在NAS上快速搭建Joplin笔记云服务器
猫的记忆有多久?
立秋把肺养好是关键,秋季必须补一补,冬天才能健康过
研究建议:每周达到这个运动量,早死风险最低!
如何保持猫咪口腔健康?从小养成刷牙习惯,选择VOHC认证洁牙零食
人力资源管理中的数据分析技术
华为手机怎么进入recovery模式(华为手机刷机模式的教程)
青冈木是什么树
如何做到合理搭配食物、食不过量、生活减盐?