由于腾讯的对象存储服务器(COS)的半年免费试用期已过,所以寻思鼓捣一下 minio,试着在自己的服务器上搭建一套开源的 minio 对象存储系统。

单机部署基本上有以下两种方式。

直接安装

最基础的一种单机安装,这里不做过多阐述,可以参考这篇博客:Ubuntu 22.04 安装 MinIO

docker 安装

1.查看镜像

docker search minIO

2.拉取 minio 镜像

docker pull minio/minio

3.创建并启动 minio

docker run -p 9000:9000 -p 9090:9090 \
--name minio \
-d --restart=always \
-e "MINIO_ACCESS_KEY=minio" \
-e "MINIO_SECRET_KEY=minio" \
-v /home/ubuntu/data:/data \
minio/minio server \
/data --console-address ":9090" -address ":9000"
  • \ 用作换行。
  • -p 9000:9000 -p 9090:9090 暴露 9000 和 9090 端口,都可以访问。
  • --name minio 容器名称。
  • -d --restart=always 后台运行,并在容器退出时总是重启容器。
  • -e "MINIO_ACCESS_KEY=minio" 账号。(正常账号应该不低于 3 位,密码不低于 8 位,不然容器会启动不成功)
  • -e "MINIO_SECRET_KEY=minio" 密码。
  • -v /home/ubuntu/data:/data -v 是 docker run 当中的挂载,minio 所上传的文件默认存储在容器的 data 目录下,这里的/home/ubuntu/data:/data 意思就是将容器的/data 目录和宿主机的/home/ubuntu/data 目录做映射,这样在操作文件时,容器里的数据可以同步到服务器中。
    • 假如删除容器,宿主机中挂载的目录是不会删除的。假如没有使用-v 挂载目录,在宿主机的存储位置的文件会被直接删除。
    • 挂载其实就是将容器目录和宿主机目录进行绑定,操作宿主机目录,容器目录也会变化,操作容器目录,宿主机目录也会变化。可以间接理解为数据持久化,防止容器误删,导致数据丢失的情况。
  • minio/minio 镜像名称。
  • --console-address 指定客户端端口。

4.查看容器和镜像

5.访问客户端

部署完成之后可以在对应的 IP 端口直接打开 minio 客户端。通过上面设置的账号密码登录。

6.创建存储桶

7.赋予桶权限

其中 private 是私有读私有写,public 是公有读公有写,custom 为公有读私有写。

设置为 public 或 custom 后就可以通过 IP 端口+桶名+文件名直接在浏览器访问了。

8.添加用户

由于我们是管理员账户,所以可以创建其他普通用户和自己一同共享文件存储系统。

可以看到,在创建的时候我们可以为其赋予规则,有默认的几种规则,当然也可以添加自定义规则。

9.添加规则

比如这里,我们新建了一个规则,这个规则允许该用户在名为 test 的存储桶下对该桶里的文件进行增删改查,但是也仅限于此桶,他看不到我的其他桶,且无法创建新的桶。

如何在 ubuntu 上搭建 minio的更多相关文章

  1. 如何在 Ubuntu 上搭建网桥

    导读作为一个 Ubuntu 16.04 LTS 的初学者.如何在 Ubuntu 14.04 和 16.04 的主机上搭建网桥呢?顾名思义,网桥的作用是通过物理接口连接内部和外部网络.对于虚拟端口或者 ...

  2. 如何在ubuntu上搭建服务器并且可以使用ftp上传

    参考: 配置ftp:  http://jingyan.baidu.com/article/67508eb4d6c4fd9ccb1ce470.html 配置ftp这个中把 新建 allowed_user ...

  3. 如何在ubuntu上搭建hustoj?

    1.安装MySQL apt-get install mysql-server mysql-client 安装的过程会弹出一个框,输入sql密码,按TAB切换到ok 2.安装apache2 apt-ge ...

  4. Ubuntu上搭建Watir-Webdriver与Cucumber环境

    本文主要演示如何在Ubuntu上搭建Watir-Webdriver与Cucumber环境,用于自动化测试. 1. Ubuntu环境 A. 安装 因为我的工作机是Windows,所以采用虚拟机的方式使用 ...

  5. Ubuntu上搭建Git服务器

    下面我们就看看,如何在Ubuntu上搭建Git服务器.我们使用VMware虚拟机安装两台Ubantu系统,分别命名为gitServer和gitClient_01. 1.安装OpenSSH并配置SSH无 ...

  6. 在ubuntu上搭建交叉编译环境---arm-none-eabi-gcc

    最近要开始搞新项目,基于arm的高通方案的项目. 那么,如何在ubuntu上搭建这个编译环境呢? 1.找到相关的安装包:http://download.csdn.net/download/storea ...

  7. 如何在Windows上搭建Android开发环境

    Android开发越来越火,许多小伙伴们纷纷学习Android开发,学习Android开发首要任务是搭建Android开发环境,由于大家 主要实在Windows 上开发Android,下面就详细给大家 ...

  8. 如何在RHEL7上搭建Samba服务实现Windows与Linux之间的文件共享

    如何在RHEL7上搭建Samba服务实现Windows与Linux之间的文件共享 实现环境:VMware workstations.RHEL7.0 第一步:配置网卡IP及yum软件仓库 命令:vim ...

  9. Ubuntu上搭建Hadoop环境(单机模式+伪分布模式)

    首先要了解一下Hadoop的运行模式: 单机模式(standalone)        单机模式是Hadoop的默认模式.当首次解压Hadoop的源码包时,Hadoop无法了解硬件安装环境,便保守地选 ...

  10. 在Ubuntu上搭建kindle gtk开发环境

    某个角度上说,kindle很类似android,同样的Linux内核,同样的Java用户层.不过kindle更注重简单.节能.稳定.Amazon一向认为,功能过多会分散人们阅读时候的注意力. Kind ...

随机推荐

  1. python报错:Pip 20.3+ break proxy connection

    参考: https://www.cnblogs.com/devilmaycry812839668/p/17872452.html =================================== ...

  2. python报错:pyglet.canvas.xlib.NoSuchDisplayException: Cannot connect to "None"

    运行python代码报错: 问题发现: 问题其实十分的狗血,这个代码是在服务器上运行的,运行之前其实并没有看具体的代码情况,git clone 下载下来就直接运行了,原来这个代码需要进行图片绘制,说直 ...

  3. 【转载】 t-SNE是什么? —— 使用指南

    原文地址: https://www.cnblogs.com/LuckBelongsToStrugglingMan/p/14161405.html 转者前言: 该文相当于一个  t-SNE  使用指南, ...

  4. MPTCP(六):MPTCP测试

    MPTCP测试 1.注意事项 测试主机已替换支持MPTCPv1的内核,并且已使能MPTCP,本次测试中使用的内核版本均为5.18.19 测试主机中确保已经正确配置了iproute2 和 mptcpd, ...

  5. WPF自定义控件之ItemsControl鱼眼效果

    原理 先获取鼠标在控件中的坐标,在获取其每一项相对于ItemsControl的坐标,然后计算每一项离当前鼠标的距离,在根据这个距离,对其每一项进行适当的缩放 实现 创建一个类,命名为FishEyeIt ...

  6. rk3568 | rk平台GPIO冲突检测小技巧

    上一篇我们讲解了如何编写gpio驱动,但是实际操作中,经常发现gpio引脚被占用的情况发生,那么本篇文章就详细讲解rxw平台下如何快速定位gpio复用问题以及如何解决. 一.GPIO寄存器查找 要想查 ...

  7. OpenPCDet为KITTI数据集生成数据信息出现错误TypeError: load() missing 1 required positional argument: ‘Loader‘的解决方案

    OpenPCDet为KITTI数据集生成数据信息出现错误 TypeError: load() missing 1 required positional argument: 'Loader' 通过查阅 ...

  8. 使用 reloadNuxtApp 强制刷新 Nuxt 应用

    title: 使用 reloadNuxtApp 强制刷新 Nuxt 应用 date: 2024/8/22 updated: 2024/8/22 author: cmdragon excerpt: re ...

  9. Zsh 配置

    基本配置 安裝 Zsh: # Ubuntu/Debian sudo apt install zsh # macOS brew install zsh macOS 默认使用 Zsh,可以不用重复安装. ...

  10. 【测试平台开发】——02Vue前端框架实战—router路由设计(登录页面)

    一.安装vue-cli Mac系统: sudo npm install -g vue-cli 检查是否安装好: vue -V 二.创建新项目 1.打开Vue项目管理器 输入命令: vue ui 但是没 ...