Перейти к основному содержимому
AWS CLI
Последнее изменение:

AWS CLI

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

Через AWS CLI можно работать с S3 API.

Настроить AWS CLI

  1. Настройте доступ.
  2. Установите клиент.
  3. Создайте конфигурацию AWS CLI.

1. Настроить доступ

Настроить доступ может пользователь с ролью Владелец аккаунта или Администратор пользователей.

  1. Создайте сервисного пользователя с ролью с доступом в объектное хранилище, подробнее в подразделе Доступ в рамках ролевой модели.
  2. Выдайте пользователю S3-ключ.

2. Установить клиент

Используйте инструкцию Install or update to the latest version of the AWS CLI документации Amazon.

3. Создать конфигурацию AWS CLI

  1. Откройте терминал.

  2. Откройте режим конфигурирования:

    aws configure
  3. Введите AWS Access Key ID — значение поля Access key из S3-ключа.

  4. Введите AWS Secret Access Key — значение поля Secret key из S3-ключа.

  5. Введите Default region name — пул (ru-1).

  6. Настройки будут сохранены в конфигурационных файлах:

    • учетные данные в .aws/credentials:

      [default]
      aws_access_key_id = <access_key>
      aws_secret_access_key = <secret_key>
    • пул по умолчанию в .aws/config:

      [default]
      region = ru-1
  7. Если вы хотите использовать Virtual-Hosted адресацию, в конфигурационный файл .aws/config добавьте параметр:

    [default]
    s3 =
    addressing_style = virtual

Работа с AWS CLI

Синтаксис команд смотрите в инструкции AWS документации Amazon.

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

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

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

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

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

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

Укажите:

  • ru-1 — пул;
  • <container_name> — имя нового контейнера.

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

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

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

Укажите:

  • ru-1 — пул;
  • <container_name> — имя контейнера.

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

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

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

Укажите:

  • ru-1 — пул;
  • <object_name> — имя объекта;
  • <container_name> — имя контейнера.

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

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

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

Укажите:

  • ru-1 — пул;
  • <container_name> — имя контейнера;
  • <object_name> — имя объекта.