Инструменты для работы
S3-хранилище можно использовать разными способами — через командную строку, API (программные интерфейсы), графические клиенты или SDK (наборы инструментов разработки программного обеспечения) для популярных языков программирования. Ниже приведены основные инструменты и примеры работы.
Командная строка (AWS CLI)
AWS CLI — это официальный инструмент для управления S3 из терминала. Примеры базовых команд:
# Создание бакета
aws s3 mb s3://my-bucket
# Загрузка файла
aws s3 cp localfile.txt s3://my-bucket/
# Скачивание файла
aws s3 cp s3://my-bucket/remote.txt .
# Просмотр списка бакетов
aws s3 ls
# Удаление файла
aws s3 rm s3://my-bucket/file.txt
Работа через API (REST)
S3 поддерживает взаимодействие по REST API. Запросы выполняются стандартными HTTP-методами (GET, PUT, DELETE и т. д.).
Пример: загрузка файла с помощью curl:
curl -X PUT -T localfile.txt -H "Authorization: AWS ACCESS_KEY:SECRET_KEY" -H "Content-Type: text/plain" https://my-bucket.s3.amazonaws.com/localfile.txt
Пример: получение списка объектов:
curl -X GET -H "Authorization: AWS ACCESS_KEY:SECRET_KEY" https://my-bucket.s3.amazonaws.com/
Графические клиенты
Cyberduck
Удобный GUI-клиент для Windows и macOS. Позволяет просматривать, загружать и управлять файлами в S3, как в обычном файловом менеджере.
Rclone
Консольная утилита для синхронизации данных между S3 и локальными папками. Примеры:
# Копирование файла в бакет
rclone copy localfile.txt s3:my-bucket
# Синхронизация папок
rclone sync /local/folder s3:my-bucket/folder
S3 Browser
Простая программа под Windows для управления файлами в S3. Подходит начинающим пользователям.
S3cmd / S5cmd
Инструменты командной строки для автоматизации работы с S3.
# S3cmd
s3cmd put localfile.txt s3://my-bucket/
# S5cmd (более быстрая альтернатива)
s5cmd cp localfile.txt s3://my-bucket/
SDK для разработчиков
S3 можно интегрировать напрямую в приложения, используя официальные SDK:
- Python (Boto3): Документация;
- Java (AWS SDK): Документация;
- Go: Документация.