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. 洛谷---小L和小K的NOIP考后放松赛

    链接: https://www.luogu.org/contestnew/show/11805?tdsourcetag=s_pcqq_aiomsg 题解: 没人过的题我就没看 t2: 考虑每个点是朋友 ...

  2. RequireJS跨域加载html模版后被转成JS问题分析及解决

    问题描述 RequireJS跨域加载HTML模版失败,例如: 在a.com域名下请求CDN域名下的模版,text.js插件会把html文件转成html.js文件去加载,由于并没有生成html.js文件 ...

  3. WinRAR 0day漏洞

    WinRAR 0day漏洞(附利用过程) 英国安全机构Mohammad Reza Espargham的漏洞实验室发现,流行压缩工具WinRAR 5.21最新版里存在一个安全漏洞,目前该漏洞还属于零日漏 ...

  4. Codeforces 922F Divisibility 构造

    Divisibility 我们考虑删数字 首先我们可以发现有一类数很特殊就是大于 n / 2的素数, 因为这些素数的贡献只有1, 并且在n大的时候, 这些素数的个数不是很少, 我们可以最后用这些数去调 ...

  5. Codeforces 362D Fools and Foolproof Roads

    Fools and Foolproof Roads 并查集瞎搞搞就行, 有点小坑点. #include<bits/stdc++.h> #define LL long long #defin ...

  6. php 操作数据库

    $datetoday = date('Y-m-d'); $datetime = $thedate; $data_info = $data; $db = array( 'dsn' => 'mysq ...

  7. js,JQuery实现,带筛选,搜索的select

    代码 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title& ...

  8. 求小于n且与n互质的数的个数

    int eu(int n){ int ans=n; for(int i=2;i*i<=n;i++) { if(n%i==0) { ans=ans/i*(i-1); while(n%i==0)n/ ...

  9. 查看name的状态,是属于active还是standby

    sudo -E -u hadoop /home/hadoop/bin/hdfs haadmin -getServiceState nn1 sudo -E -u hadoop /home/hadoop/ ...

  10. Codeforces Gym 101291C【优先队列】

    <题目链接> 题目大意: 就是一道纯模拟题,具体模拟过程见代码. 解题分析:要掌握不同优先级的优先队列的设置.下面是对优先队列的使用操作详解: priority_queue<int& ...