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)
至此结束!
热门推荐
在法院强制执行过程中如何保护个人资产
流感季校园防护指南:这些消毒要点请收好
从“和事佬”到“法律通”!这位55岁社区民警破圈拿下法考A证
电解铜的全面介绍与应用概述
广东多地公务员工资待遇分享!真是旱的旱死涝的涝死,差距极大
如何提高自己的理解能力
湖泊的地质作用及分类
复读生的心路历程:一次重启未来的机会
蜘蛛在生态系统中的作用:揭开其对环境的重要性
“大美西山,秋日之约”:西山精品旅游路线发布
如何通过哲学思考改善人生的困境?
2024全球6G发展回顾
七招提升简历的吸引力
植物甾醇在蛋鸡养殖中的经济效益分析:每羽年收益提升8.6-12.4元
云贵川美食刨汤肉
白头发是怎么长出来的?六大因素及预防方法全解析
听力损失程度分级:如何自测与预防?
与MSCI合作+明星中概股回归,香港将成为投资亚洲的首选市场?
中职生上大学的9个途径,早知道早“受益”
福州房屋鉴定:目的、流程与注意事项全解析
从高风险到零担忧,2024 专家共识为急诊医护传染病防护破局
总是哈欠连天,可能与4种病有关
如何妥善处理保险垫付的理赔问题?这些问题有哪些解决办法?
如何改善普洱茶口感,提升品饮体验
中国银团贷款审判案例研究及法律适用分析
职场发言中,肢体语言的作用是什么?
2025跑网约车还能赚钱吗?多维度揭秘司机现状与挑战!
不锈钢餐具含铅吗?如何选择健康安全的餐具
农村房屋房产证档案缺失怎么办?补办流程详解
自驾游选燃油车还是电动车?全面分析助你做出明智选择!