AWS CLI

AWS CLI (AWS Command Line Interface) — это интерфейс командной строки для работы с сервисами AWS.

Подключиться к хранилищу через AWS CLI

  1. Установите AWS CLI. Подробнее в документации Amazon.
  2. Подключитесь к хранилищу:
aws configure
  1. Введите значения параметров:

    • AWS Access Key ID — логин в формате НомерАккаунта_ИмяПользователя;
    • AWS Secret Access Keyпароль пользователя Объектного хранилища;
    • Default region nameпул (ru-1).
  2. Настройки будут сохранены в конфигурационных файлах:

    • учетные данные в .aws/credentials:
    [default]
     aws_access_key_id = НомерАккаунта_ИмяПользователя
     aws_secret_access_key = Пароль
    
    • пул по умолчанию в .aws/config:
    [default]
       region = ru-1
    

Работа с AWS CLI

Общий порядок вызова команд смотрите в официальной документации Amazon.

Для работы с Объектным хранилищем через AWS CLI используйте:

  • s3api — команды, соответствующие операциям в REST API;
  • s3 — дополнительные команды, упрощающие работу с большим количеством объектов.

При запуске команды aws параметр --endpoint-url=https://s3.storage.selcloud.ru обязателен.

Создать контейнер

  1. Подключитесь к хранилищу.

  2. Создайте контейнер:

    aws --endpoint-url=https://s3.storage.selcloud.ru s3 mb s3://<container_name>
    

    Укажите <container_name> — имя нового контейнера.

Посмотреть список объектов

  1. Подключитесь к хранилищу.

  2. Посмотрите список объектов:

    aws --endpoint-url=https://s3.storage.selcloud.ru s3 ls --recursive s3://<container_name>
    

    Укажите <container_name> — имя контейнера.

Загрузить объект

  1. Подключитесь к хранилищу.

  2. Загрузите файлы в хранилище:

    aws --endpoint-url=https://s3.storage.selcloud.ru s3 cp <path_to_object> s3://<container_name>/
    

    Укажите:

    • <path_to_object> — префикс объекта;
    • <container_name> — имя контейнера.

Удалить объект

  1. Подключитесь к хранилищу.

  2. Удалите объект:

    aws --endpoint-url=https://s3.storage.selcloud.ru s3 rm s3://<container_name>/<path_to_object>/<object>
    

    Укажите:

    • <container_name> — имя контейнера;
    • <path_to_object> — префикс объекта;
    • <object> — имя объекта.