如何在 ubuntu 上搭建 minio
由于腾讯的对象存储服务器(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的更多相关文章
- 如何在 Ubuntu 上搭建网桥
导读作为一个 Ubuntu 16.04 LTS 的初学者.如何在 Ubuntu 14.04 和 16.04 的主机上搭建网桥呢?顾名思义,网桥的作用是通过物理接口连接内部和外部网络.对于虚拟端口或者 ...
- 如何在ubuntu上搭建服务器并且可以使用ftp上传
参考: 配置ftp: http://jingyan.baidu.com/article/67508eb4d6c4fd9ccb1ce470.html 配置ftp这个中把 新建 allowed_user ...
- 如何在ubuntu上搭建hustoj?
1.安装MySQL apt-get install mysql-server mysql-client 安装的过程会弹出一个框,输入sql密码,按TAB切换到ok 2.安装apache2 apt-ge ...
- Ubuntu上搭建Watir-Webdriver与Cucumber环境
本文主要演示如何在Ubuntu上搭建Watir-Webdriver与Cucumber环境,用于自动化测试. 1. Ubuntu环境 A. 安装 因为我的工作机是Windows,所以采用虚拟机的方式使用 ...
- Ubuntu上搭建Git服务器
下面我们就看看,如何在Ubuntu上搭建Git服务器.我们使用VMware虚拟机安装两台Ubantu系统,分别命名为gitServer和gitClient_01. 1.安装OpenSSH并配置SSH无 ...
- 在ubuntu上搭建交叉编译环境---arm-none-eabi-gcc
最近要开始搞新项目,基于arm的高通方案的项目. 那么,如何在ubuntu上搭建这个编译环境呢? 1.找到相关的安装包:http://download.csdn.net/download/storea ...
- 如何在Windows上搭建Android开发环境
Android开发越来越火,许多小伙伴们纷纷学习Android开发,学习Android开发首要任务是搭建Android开发环境,由于大家 主要实在Windows 上开发Android,下面就详细给大家 ...
- 如何在RHEL7上搭建Samba服务实现Windows与Linux之间的文件共享
如何在RHEL7上搭建Samba服务实现Windows与Linux之间的文件共享 实现环境:VMware workstations.RHEL7.0 第一步:配置网卡IP及yum软件仓库 命令:vim ...
- Ubuntu上搭建Hadoop环境(单机模式+伪分布模式)
首先要了解一下Hadoop的运行模式: 单机模式(standalone) 单机模式是Hadoop的默认模式.当首次解压Hadoop的源码包时,Hadoop无法了解硬件安装环境,便保守地选 ...
- 在Ubuntu上搭建kindle gtk开发环境
某个角度上说,kindle很类似android,同样的Linux内核,同样的Java用户层.不过kindle更注重简单.节能.稳定.Amazon一向认为,功能过多会分散人们阅读时候的注意力. Kind ...
随机推荐
- mindspore.ops.Pow()等算子不能处理float64类型的数据
原文地址: https://gitee.com/mindspore/mindspore/issues/I3ZG99 Software Environment: -- MindSpore r1.2 GP ...
- 白鲸开源CEO郭炜在2024 DataOps发展大会上获聘专家
2024年5月15日,白鲸开源CEO郭炜在2024 DataOps发展大会上被正式聘任为DataOps专家,并获得了荣誉证书.本次大会由中国通信标准化协会主办,中关村科学城管委会提供支持,大数据技术标 ...
- 【故障排查】10分钟解决Quartz重复调度的疑难杂症
我司使用Apache DolphinScheduler作为调度框架很久了,感兴趣的小伙伴可以看看这些干货文章: 因为之前监控到会出现重复的调度的问题,所以此文记录排查重复调度问题的全过程,希望对社区其 ...
- vue3的defineAsyncComponent是如何实现异步组件的呢?
前言 在上一篇 给我5分钟,保证教会你在vue3中动态加载远程组件文章中,我们通过defineAsyncComponent实现了动态加载远程组件.这篇文章我们将通过debug源码的方式来带你搞清楚de ...
- Wetab 标签页:内置多种免费实用优雅小组件的浏览器主页和起始页
Wetab 是什么? Wetab 是一款基于浏览器的新标签页产品,主张辅助用户打造一个兼具效率与美观的主页. Wetab 的核心特色便是内置了多种实用.优雅的小组件. 今天这篇,主要按照分类详细介绍 ...
- SSM_Spring+SpringMVC+MyBatis学习
没听过的重点部分 springSecurity 4.0开始默认打开_csrf防护,但是会导致403 forbidden问题,所以可以关闭,但是关了就没有csrf防护了 其中还有传递的token和加密的 ...
- “从零到一:如何在鸿蒙OS上启动你的第一个项目”
背景与引言 全球操作系统市场现状如何? 长期以来,Android.iOS.Windows等巨头几乎垄断了整个市场,成为人们日常生活中不可或缺的工具.然而,尽管它们在各自领域有着不可否认的成功,却也逐渐 ...
- k8s-使用Network Policies实现网络隔离
一.需求 Kubernetes 的命名空间主要用于组织和隔离资源,但默认情况下,不同命名空间中的 Pod 之间是可以相互通信的.为了实现更严格的网络隔离,同一套k8s需要根据不同的命名空间进行网络环境 ...
- C++ weak_ptr除了解决循环引用还能做什么?
C++: weak_ptr到底有什么用? 很多人对std::weak_ptr的认识只是不增加std::shared_ptr的引用计数,可以用来解决std::shared_ptr可能造成的循环引用问题. ...
- canvas图片旋转扩展出原生JS实现移动端横竖屏手写签名示例
前提知识 canvas是提供了各种各样的接口去控制画布,比如旋转rotate方法. 这里的旋转并不是真的把这个画布旋转了,例如ctx.rotate(90 * Math.PI / 180)顺时针旋转90 ...