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

【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/minio
    container_name: minio
    ports:
      - "9000:9000"
      - "9001:9001"
    environment:
      MINIO_ROOT_USER: admin
      MINIO_ROOT_PASSWORD: admin123
    volumes:
      - /mnt/data/minio:/data
    command: 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

在这里插入图片描述


http://www.kler.cn/a/418881.html

相关文章:

  • 充分统计量(Sufficient Statistic)概念与应用: 中英双语
  • Qt如何改变串口读取数据的频率
  • 代码之丑第一期-缩进
  • HTTPS 加密
  • OkHttp3 - 2. OkHttp的核心组件与架构
  • 多模态图像生成模型Qwen2vl-Flux,利用Qwen2VL的视觉语言理解能力增强FLUX,可集成ControlNet
  • Linux 僵尸进程和孤儿进程, 进程优先级
  • Android 12.0新增自定义HIDL问题记录
  • 内网穿透步骤
  • Spring Data JPA(二) 高级进阶
  • linux——进程间通信及管道的应用场景
  • 蓝桥杯经验分享
  • 医院分诊管理系统|Java|SSM|VUE| 前后端分离
  • 2. STM32_中断
  • 深入理解 PyTorch .pth 文件和 Python pickle 模块:功能、应用及实际示例
  • 前端学习week8——vue.js
  • 支持向量机算法:原理、实现与应用
  • LeetCode题解:34.在排序数组中查找元素的第一个和最后一个位置【Python题解超详细,二分查找法、index法】,知识拓展:index方法详解
  • [MySQL]流程控制语句
  • SpringCloud书单推荐
  • 深度学习常见数据集处理方法
  • 爬虫专栏第一篇:深入探索爬虫世界:基础原理、类型特点与规范要点全解析
  • npm : 无法加载文件 D:\nodejs\npm.ps1,因为在此系统上禁止运行脚本
  • 云技术基础(泷羽sec)
  • ubuntu配置网络
  • 【论文投稿】国产游戏技术:迈向全球引领者的征途