Endpoint API — https://bs2.larchdock.com. Хранилище совместимо с Amazon S3, поэтому подойдёт любой S3-клиент. Создайте ключи доступа в консоли и настройте CLI:
# настройка профиля $ aws configure --profile okhtabox AWS Access Key ID [None]: AKOKXXXXXXXXXXXXXX AWS Secret Access Key [None]: **** # создать бакет и залить файл $ aws s3 mb s3://media-prod --endpoint-url https://bs2.larchdock.com $ aws s3 cp clip.ts s3://media-prod/box/v1/blobs/ --endpoint-url https://bs2.larchdock.com
Запросы подписываются по алгоритму AWS Signature v4. Каждый ключ состоит из Access Key ID и Secret Access Key; секрет показывается один раз при создании. Ротацию ключей можно настроить в консоли.
Поддерживаются основные операции объектного хранилища:
| Операция | Метод | Описание |
|---|---|---|
| PutObject | PUT /{bucket}/{key} | Загрузка объекта |
| GetObject | GET /{bucket}/{key} | Скачивание объекта |
| ListObjectsV2 | GET /{bucket} | Листинг префикса |
| DeleteObject | DELETE /{bucket}/{key} | Удаление объекта |
| CreateMultipartUpload | POST /{bucket}/{key}?uploads | Многочастная загрузка |
$ curl -O https://bs2.larchdock.com/media-prod/box/v1/blobs/clip.ts
Временная ссылка выдаёт доступ к объекту без раскрытия ключей. Срок задаётся в секундах:
$ okx presign media-prod/box/v1/blobs/clip.ts --expires 3600 https://bs2.larchdock.com/box/v1/blobs/clip.ts?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Expires=3600&X-Amz-Signature=…
Python (boto3):
import boto3 s3 = boto3.client("s3", endpoint_url="https://bs2.larchdock.com") s3.upload_file("clip.ts", "media-prod", "box/v1/blobs/clip.ts")
| Параметр | Значение |
|---|---|
| Максимальный размер объекта | 5 ТБ (multipart) |
| Размер части multipart | от 5 МБ |
| Запросов в секунду на бакет | 3 500 PUT / 5 500 GET |
| Длина ключа объекта | 1 024 байта |
Данные размещаются в 6 регионах. Основной регион записи — Санкт-Петербург; доставка выполняется из ближайшего PoP автоматически.
Санкт-Петербург · Москва · Казань · Нижний Новгород · Екатеринбург · Новосибирск.
Для записи в конкретную точку присутствия используйте региональный endpoint — объект остаётся в этом регионе, доставка идёт из ближайшего PoP:
| Регион | Код | Endpoint |
|---|---|---|
| Санкт-Петербург | ru-spb-1 | https://bs2.larchdock.com |
| Казань | ru-kzn-1 | https://kzn.okhtabox.ru |
| Москва | ru-msk-1 | https://msk.okhtabox.ru |
| Нижний Новгород | ru-nnov-1 | https://nnov.okhtabox.ru |
Эндпоинт Нижнего Новгорода работает только на чтение: загружайте объекты через Петербург, Казань или Москву.