Minio: различия между версиями

Материал из wiki.nntc.nnov.ru
Перейти к навигации Перейти к поиску
(→‎Сохранить файл)
(→‎Загрузить файл)
Строка 59: Строка 59:
  
 
==Загрузить файл==
 
==Загрузить файл==
 +
 +
download.py
 +
 +
<pre>
 +
from config import s3_client, BUCKET_NAME
 +
 +
# s3_client.download_file(Из какого бакета, Имя в облаке, Как назвать на диске)
 +
s3_client.download_file(BUCKET_NAME, 'test.txt', 'restored_photo.txt')
 +
print("✅ Файл успешно скачан!")
 +
</pre>

Версия 20:14, 3 апреля 2026

Работа из python

Создать окружение и установить модуль

Через python

python3 -m venv myenv
source myenv/bin/activate
pip install boto3

Через conda

conda create --name minio_project python=3.10 boto3
conda activate minio_project

Конфиг

config.py
import boto3
from botocore.client import Config

MINIO_URL = 'http://2.nntc.nnov.ru:9000'
ACCESS_KEY = 'user08'
SECRET_KEY = '6f9tmxqp4zrb'
BUCKET_NAME = 'user08'

s3_client = boto3.client(
    's3',
    endpoint_url=MINIO_URL,
    aws_access_key_id=ACCESS_KEY,
    aws_secret_access_key=SECRET_KEY,
    config=Config(signature_version='s3v4'),
    region_name='us-east-1'
)

Сохранить файл

upload.py
from config import s3_client, BUCKET_NAME

def upload(local_file):
    try:
        s3_client.upload_file(local_file, BUCKET_NAME, local_file)
        print(f"Файл {local_file} загружен в Minio.")
    except Exception as e:
        print(f"Ошибка: {e}")

upload('photo.jpg')
upload('document.pdf')

Загрузить файл

download.py
from config import s3_client, BUCKET_NAME

# s3_client.download_file(Из какого бакета, Имя в облаке, Как назвать на диске)
s3_client.download_file(BUCKET_NAME, 'test.txt', 'restored_photo.txt')
print("✅ Файл успешно скачан!")