minio

Minio是一个非常轻量的对象存储服务。

Github: minio

它本身不支持文件的版本管理。如果有这个需求,可以用 s3git 搭配使用。

Github: s3git

安装

minio 文档有列出各平台的安装方式。这里只说 docker 的方式。

docker-compose.yml

version: "3"

services:
  minio:
    image: minio/minio
    volumes:
      - minio-data:/data
    ports:
      - "9080:9000"
    environment:
      MINIO_ACCESS_KEY: minio
      MINIO_SECRET_KEY: minio123
    command: server /data

volumes:
  minio-data:

将上面内容保存为 docker-compose.yml 文件。然后在这个文件所在的文件夹内执行 docker-compose up -d。minio 服务就启动了。

minio 界面

服务启动后,访问 http://127.0.0.1:9080 进入登录界面:

输入上面设置的 access key:minio 和 secret key:minio123,登录。

图中 1 是上传一个文件;图中 2 是创建一个 bucket (储存区)。

文件必须上传到某一个存储区里面,因此必须先创建一个 bucket。

文件上传后,一旦选择文件,就会在顶部出现删除和下载的操作按钮。

在 Laravel 里使用

配置

  1. 引入包
    composer require league/flysystem-aws-s3-v3
  2. 修改 config/filesystems.php

    ...
    'cloud' => env('FILESYSTEM_CLOUD', 'minio'),
    ...
    'disks' => [
        ...
        'minio' => [
            'driver' => 's3',
            'endpoint' => env('MINIO_ENDPOINT'),
            'use_path_style_endpoint' => true,
            'key' => env('MINIO_ACCESS_KEY_ID'),
            'secret' => env('MINIO_SECRET_ACCESS_KEY'),
            'region' => env('MINIO_DEFAULT_REGION'),
            'bucket' => env('MINIO_BUCKET'),
        ],
        ...
    ]
  3. 修改 .env

    FILESYSTEM_CLOUD=minio
    MINIO_ENDPOINT="http://127.0.0.1:9080"
    MINIO_ACCESS_KEY_ID=minio
    MINIO_SECRET_ACCESS_KEY=minio123
    MINIO_DEFAULT_REGION=cn-north-1
    MINIO_BUCKET=刚创建的bucket名称

尝试

  1. 打开 tinker
    php artisan tinker
  2. 存储
    Storage::cloud()->put('hello.json', '{"hello": "world"}');
    结果:true
  3. 取出
    Storage::cloud()->get('hello.json');
    结果:{"hello": "world"}

轻量对象存储服务——minio的更多相关文章

  1. 对象存储服务-Minio

    Mino 目录 Mino 对象存储服务 Minio 参考 Minio 架构 为什么要用 Minio 存储机制 纠删码 MinIO概念 部署 单机部署: Docker 部署Minio 分布式Minio ...

  2. 对象存储服务MinIO安装部署分布式及Spring Boot项目实现文件上传下载

    目录 一.MinIO快速入门 1. MinIO简介 2. CentOS7更换成阿里云镜像 3. 安装 3.1 下载 3.2 运行测试 4. 配置脚本执行文件 4.1 创建配置执行文件 4.2 执行 二 ...

  3. 使用MinIO搭建对象存储服务

    1.MinIO是什么? MinIO 是一款高性能.分布式的对象存储系统. 它是一款软件产品, 可以100%的运行在标准硬件.即X86等低成本机器也能够很好的运行MinIO. MinIO与传统的存储和其 ...

  4. 免费版对象存储【minIO】CentOS部署实践记录 2021

    好久没写,记录一下 1.背景 之前一直用的七牛,不过是收费的,然后有些定制化需求,可能比较看重预算,然后就有了这篇开源方式:minio 2.简介 官方文档:http://docs.minio.org. ...

  5. Github 29K Star的开源对象存储方案——Minio入门宝典

    对象存储不是什么新技术了,但是从来都没有被替代掉.为什么?在这个大数据发展迅速地时代,数据已经不单单是简单的文本数据了,每天有大量的图片,视频数据产生,在短视频火爆的今天,这个数量还在增加.有数据表明 ...

  6. COS对象存储服务的使用

    ---------------------------------------------------------------------------------------------[版权申明:本 ...

  7. 对象存储服务(Object Storage Service,简称 OSS)

    阿里云对象存储服务(Object Storage Service,简称 OSS),是阿里云提供的海量.安全.低成本.高可靠的云存储服务.它具有与平台无关的RESTful API接口,能够提供99.99 ...

  8. openstack-r版(rocky)搭建基于centos7.4 的openstack swift对象存储服务 四

    openstack-r版(rocky)搭建基于centos7.4 的openstack swift对象存储服务 一 openstack-r版(rocky)搭建基于centos7.4 的openstac ...

  9. openstack-r版(rocky)搭建基于centos7.4 的openstack swift对象存储服务 三

    openstack-r版(rocky)搭建基于centos7.4 的openstack swift对象存储服务 一 openstack-r版(rocky)搭建基于centos7.4 的openstac ...

随机推荐

  1. jquery自定义事件

    触发事件: $(document).trigger('REMOVE_WEBSITE_MSG'); 判断消息条数为0,触发这个

  2. XML与HTML的主要差异

    1. 参考 XML 简介 2. XML 与 HTML 的主要差异 XML 不是 HTML 的替代. XML 和 HTML 为不同的目的而设计: XML 被设计为传输和存储数据,其焦点是数据的内容. H ...

  3. C# 之 HttpRequest 类

          Request对象派生自HttpRequest类,使 ASP.NET 能够读取客户端在 Web 请求期间发送的 HTTP 值,从客户端获取信息,浏览器的种类,用户输入表单的数据,Cooki ...

  4. JMeter中BeanShell的实际应用

    使用Jmeter的BeanShell断言,把响应数据中的JSON跟数据库中的记录对比 很多时候我们需要把Response Data取到的 Json 字符串跟数据库里的对比,来验证接口的正确性,使用Be ...

  5. 实现 js 数据类型的判断函数type

    type = (obj) => { const pass1 = typeof obj if (pass1 != 'object') return pass1 const pass2 = obj ...

  6. 使用Phar来打包发布PHP程序

    简单来说,Phar就是把Java界的jar概念移植到了PHP界. Phar可以将一组PHP文件进行打包,还可以创建默认执行的stub(或者叫做 bootstrap loader),Phar可以选择是否 ...

  7. oracle的存储过程和定时任务编写体会

    create or replace procedure clear_product is p_sql char(200) p_r_sql char(200) begin p_sql := ''; p_ ...

  8. jquery开发插件提供的几种方法

    http://caibaojian.com/jquery-extend-and-jquery-fn-extend.html

  9. CNN:人工智能之神经网络算法进阶优化,六种不同优化算法实现手写数字识别逐步提高,应用案例自动驾驶之捕捉并识别周围车牌号—Jason niu

    import mnist_loader from network3 import Network from network3 import ConvPoolLayer, FullyConnectedL ...

  10. NN:神经网络算法进阶优化法,进一步提高手写数字识别的准确率—Jason niu

    上一篇文章,比较了三种算法实现对手写数字识别,其中,SVM和神经网络算法表现非常好准确率都在90%以上,本文章进一步探讨对神经网络算法优化,进一步提高准确率,通过测试发现,准确率提高了很多. 首先,改 ...