对象存储
rustfs
rustfs/rustfs: 🚀 High-performance distributed object storage for MinIO alternative. 国产minio替代方案,效率比minio高(并且minio社区版开始搞事情了)
Minio
minio/minio: The Object Store for AI Data Infrastructure (github.com)
服务搭建
参照官网流程,使用docker-compose就可以了。(后续把docker-compose文件贴上来)
version: '3.7'
services:
minio:
image: minio/minio:latest
container_name: minio
volumes:
- /volume2/docker/minio/data/data:/data
- /volume2/docker/minio/data/config:/root/.minio
environment:
- MINIO_ROOT_USER=kaihang
- MINIO_ROOT_PASSWORD=xxxxx
# - MINIO_SERVER_URL=http://172.111.20.10:9000
hostname: minio.fu.insvc.cn
command: server --console-address ':9001' /data
restart: always
network_mode: bridge
privileged: true
healthcheck:
test: ["CMD", "curl", "-f", "http://172.111.20.10:9000/minio/health/live"]
interval: 30s
timeout: 20s
retries: 3客户端
安装
curl -O https://dl.min.io/client/mc/release/linux-amd64/mc
chmod +x mc
sudo mv mc /usr/local/bin/指令
添加存储服务别名
# eg: mc alias set myminio http://127.0.0.1:9000 minioadmin minioadmin
mc alias set <alias> <endpoint> <access_key> <secret_key>列出存储桶
mc ls myminio创建存储桶
mc mb myminio/mybucket上传文件
# 文件夹的话增加--recursive参数
mc cp /path/to/local/file.txt myminio/mybucket下载文件
# 文件夹的话增加--recursive参数
mc cp myminio/mybucket/file.txt /path/to/local/删除文件
mc rm myminio/mybucket/file.txt同步本地目录与存储桶
mc mirror /path/to/local/dir myminio/mybucket设置文件公开可读
mc anonymous set public myminio/mybucket/myfile.txt生成预签名 URL
mc share download --expire=1h myminio/mybucket/file.txt
# 或者文件设置成公开可读之后,直接通过https://<minio-endpoint-API-PORT>/<bucket-name>/<object-key>访问显示存储桶统计
mc du myminio/mybucket