项目场景:

最近在做一个微服务项目,有一个功能是将文件上传到minio中。


问题描述

测试的时候报了错:Non-XML response from server


原因分析:

在网上查了很多资料,有说代码中访问minio的url中端口号应该是9090的(我改成了9090,报错信息变成了connection refused),也有说用户密码有问题的。试了很多种办法,始终没有头绪。
后来看到有人说,minio最新版的安装命令和以前不一样了,api端口和console端口不一样,但是这个我是知道的,我安装的时候已经声明了两个端口(见我的另一篇文章)。不过这个倒是启发了我,因为之前的安装命令是在网上搜的,没有查找最新的minio官方文档,可能会有问题。
因此,我就查了minio官方文档,果然和我之前的安装命令不一样。


解决方案:

仔细阅读了minio官方文档后,我又把minio重新安装了一遍,新的创建minio容器命令是:

docker run -d \-p 9000:9000 \-p 9001:9001 \--name minio --restart=always --privileged=true \-v /home/minio/data:/data \-e "MINIO_ROOT_USER=minio" \-e "MINIO_ROOT_PASSWORD=minio123" \minio/minio server /data --console-address ":9001"

浏览器访问端口9001,java API端口是9000
问题解决。

总结

关于minio的问题前前后后困扰了很久,如果从一开始就想到看官方的技术文档,会省很多事。现在各种技术更迭太快了,搜索信息的时候一定要注意时效性。