Linux 部署 MinIO 分布式对象存储 配置为 typora 图床

前言

MinIO 是一款高性能的对象存储系统,它可以用于大规模的 AI/ML、数据湖和数据库工作负载。它的 API 与Amazon S3 云存储服务完全兼容,可以在任何云或本地基础设施上运行。MinIO 是开源软件,也提供商业许可和支持

MinIO 的特点有:

  • 简单:MinIO 的安装和使用都非常简单,只需几分钟就可以搭建一个对象存储服务
  • 高性能:MinIO 是世界上最快的对象存储系统,可以在32个 NVMe 驱动器和 100Gbe 网络的集群上达到 325 GiB/s 的读取速度和 165 GiB/s 的写入速度
  • Kubernetes原生:MinIO 支持所有主流的 Kubernetes 发行版,可以在公有云、私有云和边缘云上部署
  • 企业级:MinIO 提供了一系列的高级功能,如活动活动复制、对象锁定、桶和对象不变性、加密、自动化数据管理接口等

环境搭建

服务器

在腾讯云、阿里云等云厂商选购服务器,如果没有云服务器,也可以在电脑上安装虚拟机

虚拟机安装教程:在虚拟机 VMware 中安装 CentOs 7及使用 Xshell 进行连接

Docker

配置 Docker 环境:在 CentOs7 中安装宝塔面板和 Docker(包括MySQL,Redis)

部署 MinIO

Docker 部署

使用容器启动 MinIO,如果没有镜像,会自动拉取镜像

MINIO_ACCESS_KEY 设置登录用户名(至少 3 位),MINIO_SECRET_KEY 设置登录密码(至少 8 位),自行修改(下面默认 admin/admin123)

-v /home/data:/data 即宿主机目录 /home/data 映射容器内目录 /data,同理 -v /home/config 为映射配置文件数据卷

docker run -p 9000:9000 -p 9001:9001 --name minio -d --restart=always \
-e "MINIO_ACCESS_KEY=admin" -e "MINIO_SECRET_KEY=admin123" \
-v /home/data:/data -v /home/config:/root/.minio minio/minio server \
--console-address ":9000" --address ":9001" /data

如果无法访问,请检查防火墙是否开启,或者云服务的安全组是否开放 9000 和 9001 端口

相关命令:

查看已开启的端口

firewall-cmd --list-ports

开启指定端口(要重新加载防火墙)

firewall-cmd --zone=public --add-port=9000/tcp --add-port=9001/tcp --permanent

重启防火墙

systemctl restart firewalld.service

重新加载防火墙

firewall-cmd --reload

访问

访问地址:http://<你的服务器 ip>:9000/

image-20231009102034823

输入用户名和密码登录

image-20231009102202932

配置 & 使用

配置 Bucket

点击左侧 Buckets,点击 Create Bucket 新建

image-20231009102448080

填写 Bucket Name,然后点击创建

image-20231009102601538

点击创建好的 Bucket

image-20231009102711873

找到 Anonymous,然后添加规则

image-20231009102748778

添加前缀,同时修改权限为可读写,点击保存

image-20231009102913466

左侧点击 Summary,找到 Access Policy,选择 public,然后 Set

image-20231009103157926

配置 Access Key

左侧菜单找到 Access Key,点击 Create access key

复制两个 key,然后 Create

image-20231009103517250

配置 typora 图床

先安装好 typora 和 picgo ,在文章最后有安装教程,

插件安装(二选一)

如果插件安装失败,尝试重新安装 picgo

  1. 插件设置中安装(推荐)image-20231009115314064

  2. 下载插件安装

picgo-plugin-minio 地址:Herbertzz/picgo-plugin-minio (github.com)

# 使用 git 克隆下俩
git clone https://github.com/Herbertzz/picgo-plugin-minio.git# 如果下载不下来,更换为 githubfast 下载
git clone https://githubfast.com/Herbertzz/picgo-plugin-minio.git

找一个文件夹,打开 cmd 下载

克隆下来后

cd picgo-plugin-minio

npm i

image-20231009105001219

导入 picgo 插件,路径选择插件安装路径

image-20231009105257686

配置 MinIO 图床

同时设置为默认图床

image-20231009115607631

填写参数信息,然后点击确认

image-20231009120415844

在 typora 中验证

image-20231009121028381

在 minio 中查看

image-20231009121054295

image-20231009121110973

其他

使用 typora + picgo + 阿里云 OSS 实现 typora 图片上传(含 typora 和 picgo 安装包)

地址:typora + picgo + 对象存储 OSS_凉了的凉茶的博客-CSDN博客

如果 MinIO 部署在云服务器上,可以搭建个人博客,作为图床使用,或者使用第三方对象存储,比如阿里云 OSS,不过要小心防盗刷

博客搭建教程:使用 hexo + 主题 butterfly + Github 搭建个人博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/130166.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【力扣每日一题】2023.10.10 移动机器人

目录 题目&#xff1a; 示例&#xff1a; 分析&#xff1a; 代码&#xff1a; 题目&#xff1a; 示例&#xff1a; 分析&#xff1a; 题目比较复杂&#xff0c;我概括一下。给我们一个数组表示不同机器人在一维坐标轴上的初始位置&#xff0c;还有一个字符串表示每个机器人…

Netty(四)NIO-优化与源码

Netty优化与源码 1. 优化 1.1 扩展序列化算法 序列化&#xff0c;反序列化主要用于消息正文的转换。 序列化&#xff1a;将java对象转为要传输对象(byte[]或json&#xff0c;最终都是byte[]) 反序列化&#xff1a;将正文还原成java对象。 //java自带的序列化 // 反序列化 b…

黑马点评-07缓存击穿问题(热点key失效)及解决方案,互斥锁和设置逻辑过期时间

缓存击穿问题(热点key失效) 缓存击穿问题也叫热点Key问题,就是一个被高并发访问并且重建缓存业务较复杂的key突然失效了,此时无数的请求访问会在瞬间打到数据库,带来巨大的冲击 一件秒杀中的商品的key突然失效了&#xff0c;由于大家都在疯狂抢购那么这个瞬间就会有无数的请求…

小谈设计模式(19)—备忘录模式

小谈设计模式&#xff08;19&#xff09;—备忘录模式 专栏介绍专栏地址专栏介绍 备忘录模式主要角色发起人&#xff08;Originator&#xff09;备忘录&#xff08;Memento&#xff09;管理者&#xff08;Caretaker&#xff09; 应用场景结构实现步骤Java程序实现首先&#xff…

TLR4-IN-C34-C2-COO,一种结合了TLR4抑制剂TLR4-IN-C34的连接器

TLR4-IN-C34-C2-COO是一种结合了TLR4抑制剂TLR4-IN-C34的连接器&#xff0c;在免疫调节中发挥重要作用&#xff0c;它通过抑制TLR4信号通路的传导&#xff0c;从而达到降低炎症反应的目的。TLR4是Toll样受体家族中的一员&#xff0c;它主要识别来自细菌和病毒的保守模式&#x…

vue2踩坑之项目:Swiper轮播图使用

首先安装swiper插件 npm i swiper5 安装出现错误&#xff1a;npm ERR npm ERR! code ERESOLVE npm ERR! ERESOLVE could not resolve npm ERR! npm ERR! While resolving: vue/eslint-config-standard6.1.0 npm ERR! Found: eslint-plugin-vue8.7.1 npm ERR! node_modules/esl…

基于Java+SpringBoot+Vue线上医院挂号系统的设计与实现 前后端分离【Java毕业设计·文档报告·代码讲解·安装调试】

&#x1f34a;作者&#xff1a;计算机编程-吉哥 &#x1f34a;简介&#xff1a;专业从事JavaWeb程序开发&#xff0c;微信小程序开发&#xff0c;定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事&#xff0c;生活就是快乐的。 &#x1f34a;心愿&#xff1a;点…

C# Windows 窗体控件中的边距和填充

可以将 Margin 属性、Left、Top、Right、Bottom 的每个方面设置为不同的值&#xff0c;也可以使用 All 属性将它们全部设置为相同的值。 在代码中设置Margin&#xff0c;元素的左边设置为5个单位、上边设置为10个单位、右边设置为15个单位和下边设置为20个单位。 TextBox myT…

HTTP长连接实现原理

1. HTTP长连接和短连接的定义 HTTP长连接 浏览器向服务器进行一次HTTP会话访问后&#xff0c;并不会直接关闭这个连接&#xff0c;而是会默认保持一段时间&#xff0c;那么下一次浏览器继续访问的时候就会再次利用到这个连接。在HTTP/1.1版本中&#xff0c;默认的连接都是长连…

vue-7-vuex

一、Vuex 概述 目标&#xff1a;明确Vuex是什么&#xff0c;应用场景以及优势 1.是什么 Vuex 是一个 Vue 的 状态管理工具&#xff0c;状态就是数据。 大白话&#xff1a;Vuex 是一个插件&#xff0c;可以帮我们管理 Vue 通用的数据 (多组件共享的数据)。例如&#xff1a;购…

Jmeter 链接MySQL测试

1.环境部署 1.1官网下载MySQL Connector https://dev.mysql.com/downloads/connector/j/ 1.2 解压后&#xff0c;将jar放到jmeter/lib目录下 1.3 在测试计划中添加引用 2.脚本设置 2.1设置JDBC Connection Configuration 先添加一个setUp线程中&#xff0c;在setUp中添加“…

MongoDB 笔记

1 insert 、create、save区别 insert: 主键不存在则正常插入&#xff1b;主键已存在&#xff0c;抛出DuplicateKeyException 异常 save: 主键不存在则正常插入&#xff1b;主键已存在则更新 insertMany&#xff1a;批量插入&#xff0c;等同于批量执行 insert create&#x…