当前位置: 首页 > news >正文

【linux】(23)对象存储服务-MinIo

MinIO 是一个高性能的对象存储服务,兼容 Amazon S3 API。

Docker安装MinIo

在这里插入图片描述

前提条件

确保您的系统已经安装了 Docker。如果还没有安装 Docker,可以参考 Docker 官方文档进行安装。

1. 拉取 MinIO Docker 镜像

首先,从 Docker Hub 拉取 MinIO 的官方 Docker 镜像:

docker pull minio/minio

2. 创建数据目录

为了持久化存储数据,需要在主机上创建一个目录来存放 MinIO 数据:

mkdir -p /mnt/data/minio

3. 运行 MinIO 容器

使用以下命令启动 MinIO 容器:

docker run -d --name minio \-p 9000:9000 \-p 9001:9001 \-v /mnt/sda/docker/minio:/data \-e "MINIO_ROOT_USER=wuss" \-e "MINIO_ROOT_PASSWORD=wu123abc." \minio/minio server /data --console-address ":9001"

解释:

  • -d:以后台模式运行容器。
  • --name minio:为容器指定名称 minio
  • -p 9000:9000:将主机的端口 9000 映射到容器的端口 9000(MinIO API 端口)。
  • -p 9001:9001:将主机的端口 9001 映射到容器的端口 9001(MinIO 控制台端口)。
  • -v /mnt/data/minio:/data:将主机的 /mnt/data/minio 目录挂载到容器的 /data 目录,以持久化存储数据。
  • -e "MINIO_ROOT_USER=admin":设置 MinIO 的 root 用户名。
  • -e "MINIO_ROOT_PASSWORD=admin123":设置 MinIO 的 root 用户密码。
  • minio/minio:使用 MinIO Docker 镜像。
  • server /data --console-address ":9001":启动 MinIO 服务器并指定数据目录和控制台地址。
    在这里插入图片描述

4. 访问 MinIO 控制台

启动容器后,您可以通过浏览器访问 MinIO 控制台:

  • 控制台地址:http://YOUR_SERVER_IP:9001
  • 使用您在环境变量中设置的 root 用户名和密码(例如 adminadmin123)登录。

5. 验证 MinIO API

您还可以通过 MinIO API 端口访问对象存储服务:

  • API 地址:http://YOUR_SERVER_IP:9000

6. 管理和使用 MinIO

登录到 MinIO 控制台后,您可以创建存储桶、上传文件、管理用户和策略等。

示例 Docker Compose 文件(可选)

如果您更喜欢使用 Docker Compose 来管理容器,可以创建一个 docker-compose.yml 文件:

version: '3.8'services:minio:image: minio/miniocontainer_name: minioports:- "9000:9000"- "9001:9001"environment:MINIO_ROOT_USER: adminMINIO_ROOT_PASSWORD: admin123volumes:- /mnt/data/minio:/datacommand: server /data --console-address ":9001"

然后使用以下命令启动 MinIO 服务:

docker-compose up -d

Ubuntu安装MinIo

1. 更新系统包

首先,确保您的系统包是最新的:

sudo apt update
sudo apt upgrade -y

2. 下载 MinIO 二进制文件

从 MinIO 官方网站下载最新的 MinIO 服务器二进制文件:

wget https://dl.min.io/server/minio/release/linux-amd64/minio

3. 安装 MinIO

将下载的 MinIO 二进制文件移动到 /usr/local/bin 目录,并赋予执行权限:

sudo mv minio /usr/local/bin/
sudo chmod +x /usr/local/bin/minio

4. 创建数据目录

为 MinIO 创建一个数据目录:

sudo mkdir -p /mnt/data/minio

5. 创建 MinIO 用户(可选)

为了安全起见,您可以创建一个专门用于运行 MinIO 的用户:

sudo useradd -r minio-user -s /sbin/nologin

然后将数据目录的所有权设置为 minio-user

sudo chown -R minio-user:minio-user /mnt/data/minio

6. 创建 MinIO 服务文件

创建一个 systemd 服务文件,以便管理 MinIO 服务:

sudo nano /etc/systemd/system/minio.service

添加以下内容:

[Unit]
Description=MinIO
Documentation=https://docs.min.io
Wants=network-online.target
After=network-online.target[Service]
User=minio-user
Group=minio-user
EnvironmentFile=-/etc/default/minio
ExecStart=/usr/local/bin/minio server /mnt/data/minio --console-address ":9001"
Restart=always
LimitNOFILE=65536[Install]
WantedBy=multi-user.target

7. 创建环境变量文件

创建一个环境变量文件,以便设置 MinIO 的配置:

sudo nano /etc/default/minio

添加以下内容:

# MinIO 环境变量# MinIO 访问密钥和密钥
MINIO_ROOT_USER=admin
MINIO_ROOT_PASSWORD=admin123# MinIO 数据目录
MINIO_VOLUMES="/mnt/data/minio"# MinIO 控制台地址
MINIO_OPTS="--console-address :9001"

8. 启动并启用 MinIO 服务

重新加载 systemd 配置,并启动和启用 MinIO 服务:

sudo systemctl daemon-reload
sudo systemctl start minio
sudo systemctl enable minio

9. 验证 MinIO 运行状态

检查 MinIO 服务的状态,确保其正常运行:

sudo systemctl status minio

10. 访问 MinIO 控制台

启动 MinIO 服务后,您可以通过浏览器访问 MinIO 控制台:

  • 控制台地址:http://YOUR_SERVER_IP:9001
  • 使用您在环境变量中设置的 root 用户名和密码(例如 adminadmin123)登录。

11. 配置防火墙(可选)

如果您的 Ubuntu 系统启用了 UFW 防火墙,请确保允许 MinIO 端口通过防火墙:

sudo ufw allow 9000
sudo ufw allow 9001

在这里插入图片描述

相关文章:

【linux】(23)对象存储服务-MinIo

MinIO 是一个高性能的对象存储服务,兼容 Amazon S3 API。 Docker安装MinIo 前提条件 确保您的系统已经安装了 Docker。如果还没有安装 Docker,可以参考 Docker 官方文档进行安装。 1. 拉取 MinIO Docker 镜像 首先,从 Docker Hub 拉取 Mi…...

如何使用Python解析从淘宝API接口获取到的JSON数据?

基本的 JSON 解析 当从淘宝 API 接口获取到数据后(假设数据存储在变量response_data中),首先要判断数据类型是否为 JSON。如果是,就可以使用 Python 内置的json模块进行解析。示例代码如下: import json # 假设respon…...

C# 2024年Visual Studio实用插件集合

在2024年,Visual Studio作为.NET开发者的首选IDE,其插件生态不断壮大,为开发者提供了更高效、便捷的开发体验。本文将介绍一些实用的Visual Studio插件,特别是针对C#开发者,帮助提升开发效率和代码质量。 1. GitHub C…...

Matlab Simulink HDL Coder开发流程(一)— 创建HDL兼容的Simulink模型

创建HDL兼容的Simulink模型 一、使用Balnk DUT模板二、从HDL Coder库中选择模块三、为DUT开发算法/功能四、为设计创建Testbench五、仿真验证设计功能六、Simulink模型生成HDL代码 这个例子说明了如何创建一个用于生成HDL代码的Simulink模型。要创建兼容HDL代码生成的MATLAB算法…...

详解Qt pdf 之QPdfSelection 选择文本类

文章目录 QPdfSelection 类详解前言 详细说明公共函数说明1. 构造函数2. text3. boundingRect4. isEmpty5. startPage6. endPage 使用场景示例代码代码说明总结 QPdfSelection 类详解 前言 QPdfSelection 是 Qt PDF 模块中的一个类,用于表示在 PDF 文档中被选中的…...

docker中redis查看key、删除key

查看docker启动的进程 docker ps这个命令会列出所有正在运行的容器,包括容器的 ID、镜像名称、创建时间、状态、端口映射和名称 CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 1a2b3c4d5e6…...

【MySQL — 数据库基础】MySQL的安装与配置 & 数据库简单介绍

数据库基础 本节目标 掌握关系型数据库,数据库的作用掌握在Windows和Linux系统下安装MySQL数据库了解客户端工具的基本使用和SQL分类了解MySQL架构和存储引擎 1. 数据库的安装与配置 1.1 确认MYSQL版本 处理无法在 cmd 中使用 mysql 命令的情况&a…...

ehr系统建设方案,人力资源功能模块主要分为哪些,hrm平台实际案例源码,springboot人力资源系统,vue,JAVA语言hr系统(源码)

eHR人力资源管理系统:功能强大的人力资源管理工具 随着企业规模的不断扩大和业务需求的多样化,传统的人力资源管理模式已无法满足现代企业的需求。eHR人力资源管理系统作为一种先进的管理工具,能够为企业提供高效、准确、实时的人力资源管理。…...

【解决安全扫描漏洞】---- 检测到目标站点存在 JavaScript 框架库漏洞

1. 漏洞结果 JavaScript 框架或库是一组能轻松生成跨浏览器兼容的 JavaScript 代码的工具和函数。如果网站使用了存在漏洞的 JavaScript 框架或库,攻击者就可以利用此漏洞来劫持用户浏览器,进行挂马、XSS、Cookie劫持等攻击。 1.1 漏洞扫描截图 1.2 具体…...

flink学习(12)——checkPoint

如何设置checkPoint package com.bigdata.day06;/** * 1、需要三句话 * 2、设置完checkPoint后若程序出现异常,会一直重启 * 3、此时是自动进行checkPoint保存 * 4、注意:此时如果有checkpoint ,是不会出现异常的,需要将checkpoint的代码关…...

【iOS】《Effective Objective-C 2.0》阅读笔记(一)

文章目录 前言了解OC语言的起源在类的头文件中尽量少引入其他头文件多用字面量语法,少用与之等价的方法字面量数值字面量数组字面量字典 多用类型常量,少用#define预处理指令用枚举法表示状态、选项、状态码 总结 前言 最近开始阅读一些iOS开发的相关书籍…...

LVS 负载均衡面试题及参考答案

目录 什么是 LVS 负载均衡?它的主要作用是什么? 为什么要使用 LVS 进行负载均衡? LVS 有哪些组成部分? 简述 LVS 的架构。 LVS 中有哪两种典型的架构?请简要说明它们的特点。 LVS 的工作原理是怎样的?简述 LVS 的工作原理。 解释 LVS 中的虚拟服务器(VS)概念。 …...

北京科博会 天云数据CEO雷涛谈人工智能技术服务数字资产建设

7月13日,第二十六届中国北京国际科技产业博览会(简称北京科博会)在国家会议中心开幕。本届科博会年度主题为“实施创新驱动发展战略 增强高质量发展动能”。会上,天云数据CEO雷涛发表《人工智能技术服务数字资产建设》主题演讲。 近期非常引人注目的事件…...

【Python运维】容器管理新手入门:使用Python的docker-py库实现Docker容器管理与监控

《Python OpenCV从菜鸟到高手》带你进入图像处理与计算机视觉的大门! 解锁Python编程的无限可能:《奇妙的Python》带你漫游代码世界 随着容器技术的广泛应用,Docker已经成为开发和运维中的标准工具之一。使用Python语言管理Docker容器,不仅可以自动化繁琐的容器操作,还能…...

小程序解决大问题-物流系统磁盘爆满问题处理

晚上七点,煤矿调运的物流调度系统突然磁盘报名导致服务崩溃。系统用的是微服务,没有详细操作说明,也不敢动,运煤车辆排起了长队,只能联系厂家处理。好在经过30多分钟的处理,服务终于启动,系统运…...

计算机网络基础篇

TCP/IP网络模型 TCP/IP网络模型的作用就是给数据包进行层层封装,帮助数据包能够正确的找到对应的设备接受数据。 一个URL所经历的全部过程 URL所经历的全部过程: HTTP -> DNS ->协议栈-TCP->IP->MAC->网卡->交换机->路由器->服…...

32 从前序与中序遍历序列构造二叉树

32 从前序与中序遍历序列构造二叉树 32.1 从前序与中序遍历序列构造二叉树解决方案 class Solution { public:TreeNode* buildTree(vector<int>& preorder, vector<int>& inorder) {return buildTreeHelper(preorder, inorder, 0, 0, inorder.size() - 1)…...

D82【python 接口自动化学习】- pytest基础用法

day82 pytest初体验 学习日期&#xff1a;20241128 学习目标&#xff1a;pytest基础用法 -- pytest初体验 学习笔记&#xff1a; 文件命名规范 py测试文件必须以test_开头&#xff08;或_test结尾&#xff09;测试方法必须以test开头测试类必须以Test开头&#xff0c;并且…...

在开发环境中,前端(手机端),后端(电脑端),那么应该如何设置iisExpress

首先&#xff0c;要想手机端应用能成功请求后端&#xff0c;两个设备至少需在同一个局域网内&#xff0c;且IP地址互通&#xff1b; 因为ajax是http(s)://IP地址端口号的方式请求&#xff0c;但是iisExpress默认是localhost如何解决&#xff0c;并没有IP地址&#xff0c;所以手…...

磁盘/系统空间占满导致黑屏死机无法开机的解决办法

文章目录 起因具体操作1.重启虚拟机&#xff0c;一直按CtrlShitf进入GRUP界面2.选“Ubuntu高级选项”并回车选择第二个&#xff0c;recovery mode![请添加图片描述](https://i-blog.csdnimg.cn/direct/201f9784c203406d802d24b39dc2d4a3.png)3.4.命令查看磁盘情况5.查找和删除文…...

使用zabbix监控k8s

一、 参考文献 小阿轩yx-案例&#xff1a;Zabbix监控kubernetes云原生环境 手把手教你实现zabbix对Kubernetes的监控 二、部署经验 关于zabbix监控k8s&#xff0c;总体来说是分为两块内容&#xff0c;一是在k8s集群部署zabbix-agent和zabbix- proxy。二是在zabbix进行配置。…...

MacOS安装MySQL数据库和Java环境以及Navicat

安装MySQL 去官网下载&#xff1a;MySQL 下载好后安装&#xff0c;在设置里往下滑&#xff0c;出现了这样&#xff0c;就代表安装成功了 接下来配置环境&#xff1a; 首先在我们的设备上找到终端并打开,输入 vim ~/.bash_profile(注意vim后面的空格)&#xff0c;输入完成后点击…...

算法的复杂度

1.数据结构前言 下面的概念有的比较难理解&#xff0c;做个了结就行。 1.1数据结构的起源 在现实生活中我们更多地并不是解决数值计算的问题&#xff0c;而是 需要一些更科学的手段如&#xff08;表&#xff0c;数&#xff0c;图等数据结构&#xff09;&#xff0c;才能更好…...

Linux命令进阶·如何切换root以及回退、sudo命令、用户/用户组管理,以及解决创建用户不显示问题和Ubuntu不显示用户名只显示“$“符号问题

目录 1. root用户&#xff08;超级管理员&#xff09; 1.1 用于账户切换的系统命令——su 1.2 退回上一个用户命令——exit 1.3 普通命令临时授权root身份执行——sudo 1.3.1 为普通用户配置sudo认证 2. 用户/用户组管理 2.1 用户组管理 2.2 用户管理 2.2.1 …...

若依项目源码阅读

源码阅读 前端代码分析 代码生成器生成的前端代码有两个&#xff0c;分别是course.js用于向后端发送ajax请求的接口代码&#xff0c;另一个是index.vue&#xff0c;用于在浏览器展示课程管理的视图组件。前端的代码是基于vue3elementplus。 template用于展示前端组件别的标签…...

JVM知识点学习-1

学习视频&#xff1a;狂神说Java 类加载器和双亲委派机制 类加载器 作用&#xff1a;加载Class文件 流程&#xff1a;这里的名字car1。。在栈里面&#xff0c;但是数据在堆里面 类加载器的几个类型&#xff1a; 虚拟机自带的类加载器&#xff1b;启动类&#xff08;根Boot…...

TypeScript和JavaScript区别详解

文章目录 TypeScript和JavaScript区别详解一、引言二、类型系统1、静态类型检查TypeScript 示例JavaScript 示例 2、类型推断TypeScript 示例JavaScript 示例 三、面向对象编程TypeScript 示例JavaScript 示例 四、使用示例1. 环境搭建2. 创建TypeScript项目3. 安装TypeScript插…...

RVO动态避障技术方案介绍

原文&#xff1a;RVO动态避障技术方案介绍 - 哔哩哔哩 我们在开发游戏的时候经常会遇到这样的问题&#xff0c;当我们寻路的时候&#xff0c;其它人也在寻路&#xff0c;如何避免不从其它人的位置穿过。这个叫做动态避障&#xff0c;目前主流的解决方案就是RVO。本节我们来介绍…...

Vue进阶之单组件开发与组件通信

书接上篇&#xff0c;我们了解了如何快速创建一个脚手架&#xff0c;现在我们来学习如何基于vite创建属于自己的脚手架。在创建一个新的组件时&#xff0c;要在新建文件夹中打开终端创建一个基本的脚手架&#xff0c;可在脚手架中原有的文件中修改或在相应路径重新创建&#xf…...

OGRE 3D----5. OGRE和QML事件交互

在现代图形应用程序开发中,OGRE(Object-Oriented Graphics Rendering Engine)作为一个高性能的3D渲染引擎,广泛应用于游戏开发、虚拟现实和仿真等领域。而QML(Qt Modeling Language)则是Qt框架中的一种声明式语言,专注于设计用户界面。将OGRE与QML结合,可以充分利用OGR…...

手机网站定制建设/产品推广文案范文

摘要 图结构数据上进行半监督学习的可拓展方法。该方法基于 直接在图上操作的卷积神经网络 的有效变体。 通过 谱图卷积的局部一阶近似 来激励我们选择 卷积结构。我们的模型在 图边 上的数量(number of graph edges)上线性缩放&#xff0c;并且学习隐藏层表示(其encode 局部图…...

如果做vr参观网站/seo软件工具箱

目录 一、快速理解 1、有限状态机&#xff08;FSM&#xff09; 2、有限状态机的设计 二、详细说明 1、有限状态机FSM 1&#xff09;FSM概念 2&#xff09;FSM的3特点 3&#xff09;FSM的4要素 4&#xff09;FSM状态转换图 2、FSM的设计和实现 1&#xff09;设计思路…...

网站开发算前端吗/平板电视seo优化关键词

汽车租赁企业&#xff0c;一直用自己的方式&#xff0c;谋求发展&#xff0c;立足长远&#xff0c;不断改进&#xff0c;现在又推出了新的政策&#xff0c;对于汽车的年龄超过6年之上的车辆&#xff0c;不易出租&#xff0c;并且公布了相关的规范&#xff0c;目前整理了几个关于…...

广东app开发公司排行榜/排名优化软件点击

PyInstaller的原理简介PyInstaller其实就是把python解析器和你自己的脚本打包成一个可执行的文件&#xff0c;和编译成真正的机器码完全是两回事&#xff0c;所以千万不要指望成打包成一个可执行文件会提高运行效率&#xff0c;相反可能会降低运行效率&#xff0c;好处就是在运…...

哪些做任务的网站靠谱/快速排名方案

详细学习地址:https://how2j.cn/k/tmall_springboot/tmall_springboot-1798/1798.html项目展示:​怎么学习如果有一个项目&#xff0c;刚好就运用了上述的这些技术&#xff1a;springboot, hibernate, shiro, redis, rest 接口开发&#xff0c; 前后端分离 , vue.js。大家&…...

长沙 外贸网站建设公司价格/韶关新闻最新今日头条

今天基本上完成了通信工程教学视频中对操作系统组成的了解&#xff0c;主要分为以下几部分 硬件&#xff1a;在单个单喝的cpu上&#xff0c;硬件资源是独有的。 通用管理软件——内核&#xff1a;为了实现在同一个计算机上&#xff0c;同时近似的运行多个程序&#xff0c;内核只…...