Адрес фактического центра электронной коммерции SpringBoot (25k+star):GitHub.com/macro-positive/…
Резюме
Сервисы хранения объектов могут использоваться для хранения различных типов файлов,mall
Хранилище изображений в проекте использует OSS.Сегодня мы поговорим о том, как построить сервис объектного хранилища для хранения изображений.
Введение в MinIO
MinIO — это высокопроизводительный сервис хранения объектов, основанный на языке Go, с 19 тысячами звезд на Github. Он использует протокол с открытым исходным кодом Apache License v2.0, который очень подходит для хранения неструктурированных данных большой емкости, таких как изображения, видео, файлы журналов, резервные данные и образы контейнеров/виртуальных машин. В этой статье MinIO будет использоваться для создания службы хранения объектов для хранения изображений.
Установить и развернуть
Есть много способов установить MinIO, здесь мы используем его метод установки в среде Docker.
- Загрузите Docker-образ MinIO:
docker pull minio/minio
- Запускаем MinIO в Docker-контейнере, сюда вешаем папки данных и конфигурации MiniIO на хост:
docker run -p 9090:9000 --name minio \
-v /mydata/minio/data:/data \
-v /mydata/minio/config:/root/.minio \
-d minio/minio server /data
- После успешного завершения операции перейдите по указанному адресу, чтобы войти в систему и использовать MinIO. Ключ доступа и секрет по умолчанию
minioadmin
:http://192.168.6.132:9090
Загружайте файлы и пользуйтесь
Функцию загрузки и загрузки файлов можно выполнить с помощью веб-страницы MinIO.Давайте возьмем загрузку и загрузку изображения в качестве примера, чтобы продемонстрировать эту функцию.
- Перед сохранением файлов нам нужно создать новую корзину:
- После того, как ведро создано, вы можете загружать файлы через кнопку загрузки Здесь мы загружаем изображение:
- После завершения загрузки изображения мы можем получить путь доступа к изображению, скопировав кнопку ссылки, но это только временный путь доступа:
- Чтобы получить постоянный путь доступа, вам необходимо изменить политику доступа корзины.Мы можем нажать кнопку «Изменить политику» в правом верхнем углу корзины, чтобы изменить политику доступа;
- Есть три политики доступа на выбор: одна только для чтения, одна только для записи и одна для чтения и записи.Здесь мы можем выбрать только для чтения, но следует отметить, что префикс доступа должен быть установлен на
*.*
, иначе он будет недоступен;
- После завершения настройки нам нужно только скопировать предыдущую строку путей в ссылке, чтобы получить постоянный доступ к файлу;
- Посетите демонстрацию эффектов изображения:
Использование клиента MinIO
Хотя веб-управление MinIO очень удобно, официальный сайт по-прежнему предоставляет нам клиент на основе командной строки, MinIO Client (называемый mc), Давайте поговорим о том, как его использовать.
Общие команды
Давайте сначала познакомимся с командами mc.Эти команды имеют много общего с командами в Linux.
Заказ | эффект |
---|---|
ls | Список файлов и папок |
mb | Создайте корзину или папку |
cat | Отображать содержимое файла и объекта |
pipe | Перенаправляет STDIN на объект или файл или STDOUT |
share | Создайте URL-адрес для обмена |
cp | Копировать файлы и объекты |
mirror | Сделайте зеркало в ведре и папку |
find | Поиск файлов по параметрам |
diff | Сравните различия между двумя папками или сегментами |
rm | Удалить файлы и объекты |
events | Управление уведомлениями объектов |
watch | Прослушивание событий в файлах и объектах |
policy | Управление политиками доступа |
session | Управление сохраненными сеансами для команды cp |
config | Управление профилями mc |
update | Проверить наличие обновлений программного обеспечения |
version | информация о выходной версии |
Установка и настройка
Поскольку сервер MinIO не имеет собственного клиента, нам необходимо установить и настроить клиент, прежде чем его можно будет использовать.В качестве примера мы возьмем установку в среде Docker.
- Загрузите Docker-образ клиента MinIO:
docker pull minio/mc
- Запустите MC в контейнере Docker:
docker run -it --entrypoint=/bin/sh minio/mc
- После завершения операции нам необходимо сконфигурировать и настроить собственный сервис MinIO на клиенте.Формат конфигурации следующий:
mc config host add <ALIAS> <YOUR-S3-ENDPOINT> <YOUR-ACCESS-KEY> <YOUR-SECRET-KEY> <API-SIGNATURE>
- Для нашего сервиса MinIO можно настроить так:
mc config host add minio http://192.168.6.132:9090 minioadmin minioadmin S3v4
Общие операции
- Просмотрите ведро и просмотрите файлы, присутствующие в ведре:
# 查看存储桶
mc ls minio
# 查看存储桶中存在的文件
mc ls minio/blog
- Создать
test
ведро:
mc mb minio/test
- общий
avatar.png
Путь загрузки файла:
mc share download minio/blog/avatar.png
- найти
blog
png файлы в ведре:
mc find minio/blog --name "*.png"
- настраивать
test
Доступ к корзине есть只读
:
# 目前可以设置这四种权限:none, download, upload, public
mc policy set download minio/test/
# 查看存储桶当前权限
mc policy list minio/test/
использованная литература
Чтобы узнать больше о MinIO, обратитесь к официальной документации:docs.min.io/talent/mini-oh-go…
публика
проект торгового центраПолный набор учебных пособий сериализуется,Обратите внимание на публичный аккаунтПолучите это прямо сейчас.