Loading...

Командная строка

Справочник cdnctl

Полный справочник по cdnctl (v0.12.x). Все команды выводят JSON. Токен аутентификации хранится в ~/.cdnctl/config.json или считывается из переменных окружения CDNCTL_TOKEN и CDNCTL_ENDPOINT.

Разрушительные команды — любая команда, в имени которой есть delete или revoke, требует явного флага --yes. Без него команда завершается с ошибкой и не вносит никаких изменений.
← Platform Help

Установка и обновление

cdnctl поставляется в виде статического бинарного файла для Linux, macOS и Windows (amd64/arm64). Не требует PHP, Python, Node.js или kubectl.

install

curl -fsSL https://cdn.com.tr/downloads/cdnctl/install.sh | sh

# pin a specific version
CDNCTL_VERSION=0.12.0 curl -fsSL https://cdn.com.tr/downloads/cdnctl/install.sh | sh

Загружает последний релиз для вашей платформы, проверяет его по опубликованным контрольным суммам и устанавливает бинарный файл.

update

cdnctl update --check
cdnctl update --yes
cdnctl update --version <version> --yes

Самостоятельно обновляет установленный бинарный файл из публичного канала релизов. Перед заменой бинарного файла загруженный архив проверяется по опубликованному файлу контрольных сумм.

ФлагОписание
--checkнеобязательныйТолько сообщить, доступна ли более новая версия, ничего не изменяя
--yesнеобязательныйПрименить обновление без подтверждения
--versionнеобязательныйОбновить (или откатить) до конкретной версии вместо последней
--bin-dirнеобязательныйКаталог установки, если путь к текущему бинарному файлу недоступен для записи. Резервное значение по умолчанию: $HOME/.local/bin. Переменная окружения: CDNCTL_BIN_DIR

Аутентификация и конфигурация

login

cdnctl login --email <email> --password <password> [--endpoint <url>]

Выполняет аутентификацию и сохраняет токен в ~/.cdnctl/config.json. Используется один раз на машину; токен повторно используется для последующих команд.

ФлагОписание
--emailобязательныйАдрес электронной почты аккаунта
--passwordобязательныйПароль аккаунта
--endpointнеобязательныйБазовый URL API. По умолчанию https://cdn.com.tr

configure

cdnctl configure [--endpoint <url>] [--token <token>]

Вручную задаёт эндпоинт или токен без входа в систему. Полезно для сред CI или автоматизации на основе токенов.

ФлагОписание
--endpointнеобязательныйБазовый URL API
--tokenнеобязательныйBearer-токен. Также можно задать переменную окружения CDNCTL_TOKEN
Переменные окружения: CDNCTL_TOKEN и CDNCTL_ENDPOINT переопределяют файл конфигурации и полезны для CI-конвейеров, где запись на диск нежелательна.

Аккаунты

accounts list

cdnctl accounts list

Выводит список всех аккаунтов CDN, доступных аутентифицированному пользователю (полный JSON). Поле uuid используется как значение --account во всех остальных командах.

accounts ls

cdnctl accounts ls

Краткая, удобочитаемая версия списка — по одной строке на аккаунт, содержащей только uuid, домен и тип. Удобно для поиска uuid, который нужно сохранить по умолчанию.

accounts use / current / clear

cdnctl accounts use <uuid>
cdnctl accounts current
cdnctl accounts clear

Сохраните аккаунт по умолчанию один раз, чтобы не передавать --account <uuid> в каждой команде. После accounts use команды, привязанные к аккаунту, автоматически используют сохранённый аккаунт (они выводят (using saved account <uuid>), чтобы вы знали, какой именно); в любой момент передайте --account, чтобы переопределить его. current показывает его, clear сбрасывает.

Доступ к файлам (загрузка и управление файлами)

Загружайте, просматривайте и удаляйте файлы вашего управляемого сайта WordPress прямо из командной строки — без FTP и без ограничения на размер загрузки. Используйте эту команду вместо загрузки через браузер, если вы столкнулись с ошибкой 413 Request Entity Too Large. Пути указываются относительно wp-content вашего сайта, поэтому вы можете обращаться к uploads/, plugins/, themes/ и так далее. Вы видите только файлы своего собственного аккаунта.

Set your account once

cdnctl accounts use <uuid>

Чтобы приведённым ниже командам для работы с файлами не требовался --account каждый раз. (Выполните cdnctl accounts ls, чтобы найти свой uuid.)

List files — files ls

cdnctl files ls                       # lists wp-content (uploads, plugins, themes, …)
cdnctl files ls --path uploads
cdnctl files ls --path uploads/2026

Без указания --path выводится содержимое корня wp-content.

Upload files — cp

cdnctl cp ./photo.jpg /uploads/photo.jpg
cdnctl cp ./backup.zip /uploads/backup.zip
cdnctl cp ./my-plugin.php /plugins/my-plugin/my-plugin.php

# upload a whole folder recursively (structure is preserved):
cdnctl cp -r ./my-folder /uploads/my-folder

Добавьте -r, чтобы загрузить весь каталог — структура локальной папки воссоздаётся в месте назначения (родительские папки создаются автоматически; пустые папки пропускаются). Загрузка никогда не перезаписывает существующий файл, если не добавлен --force. Также можно указать аккаунт прямо в команде в виде <uuid>:/uploads/photo.jpg, не сохраняя аккаунт по умолчанию.

ФлагОписание
-rРекурсивно загрузить каталог.
--forceПерезаписывать уже существующие файлы.

Create a folder — files mkdir

cdnctl files mkdir --path /uploads/2026/07

Delete a file — files rm

cdnctl files rm --path /uploads/photo.jpg --yes

Требует --yes. Удалять можно только файлы (каталоги отклоняются).

Container Apps

container apps list

cdnctl container apps list --account <uuid>

Выводит список всех контейнерных приложений в аккаунте.

ФлагОписание
--accountобязательныйUUID аккаунта

container apps create

cdnctl container apps create \
  --account <uuid> \
  --name <name> \
  --image <registry/image> \
  [--tag <tag>] \
  [--port <port>] \
  [--healthcheck <path>] \
  [--healthcheck-type http|tcp|none] \
  [--metrics-port <port>] \
  [--metrics-path <path>] \
  [--replicas <n>] \
  [--plan <code>] \
  [--domain <domain>] \
  [--env-json '{"KEY":"value"}'] \
  [--secrets-json '{"SECRET":"value"}'] \
  [--registry-credential <uuid>] \
  [--persistent-mount-path <path>] \
  [--persistent-storage-gb <n>]

Создаёт новую запись контейнерного приложения и первую ревизию. Не выполняет развёртывание — после создания выполните deploy.

ФлагОписание
--accountобязательныйUUID аккаунта
--nameобязательныйИмя приложения (совместимое со slug)
--imageобязательныйПуть к образу контейнера, например registry.example.com/acme/api
--tagнеобязательныйТег образа. По умолчанию: пустая строка
--portнеобязательныйПорт контейнера, который прослушивает приложение. По умолчанию: 8080
--healthcheckнеобязательныйПуть HTTP-проверки работоспособности. По умолчанию: /health
--healthcheck-typeнеобязательныйТип проверки работоспособности: http, tcp или none
--metrics-portнеобязательныйПорт, на котором публикуются метрики Prometheus
--metrics-pathнеобязательныйПуть, по которому публикуются метрики Prometheus, например /metrics
--replicasнеобязательныйКоличество реплик. По умолчанию: 1
--planнеобязательныйКод тарифного плана. По умолчанию: starter
--domainнеобязательныйПользовательский домен для привязки
--env-jsonнеобязательныйJSON-объект переменных окружения. Значения видны в ответах GET.
--secrets-jsonнеобязательныйJSON-объект секретов. Значения шифруются и после создания больше не возвращаются.
--registry-credentialнеобязательныйUUID учётных данных реестра для приватных образов
--persistent-mount-pathнеобязательныйПуть монтирования постоянного тома, например /app/data
--persistent-storage-gbнеобязательныйРазмер постоянного тома в ГБ
Секреты: значения, переданные через --secrets-json, хранятся зашифрованными и не возвращаются ни в одном GET-ответе. Сохраните их перед выполнением этой команды.

container apps update

cdnctl container apps update \
  --account <uuid> \
  --app <uuid> \
  [--image <registry/image>] \
  [--tag <tag>] \
  [--port <port>] \
  [--replicas <n>] \
  [--healthcheck <path>] \
  [--healthcheck-type http|tcp|none] \
  [--metrics-port <port>] \
  [--metrics-path <path>] \
  [--domain <domain>] \
  [--env-json '{"KEY":"value"}'] \
  [--secrets-json '{"SECRET":"value"}'] \
  [--registry-credential <uuid>] \
  [--persistent-mount-path <path>]

Обновляет настройки приложения. Изменяются только переданные флаги. После обновления выполните deploy, чтобы опубликовать новую ревизию.

ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения
--imageнеобязательныйНовый путь к образу
--tagнеобязательныйНовый тег образа
--portнеобязательныйПорт контейнера
--replicasнеобязательныйКоличество реплик
--healthcheckнеобязательныйПуть проверки работоспособности
--healthcheck-typeнеобязательныйТип проверки работоспособности: http, tcp или none
--metrics-portнеобязательныйПорт, на котором публикуются метрики Prometheus
--metrics-pathнеобязательныйПуть, по которому публикуются метрики Prometheus
--domainнеобязательныйДомен для привязки. Передайте пустую строку, чтобы удалить.
--env-jsonнеобязательныйЗаменяет все переменные окружения этим JSON-объектом
--secrets-jsonнеобязательныйЗаменяет все секреты этим JSON-объектом. Значения никогда не возвращаются.
--registry-credentialнеобязательныйUUID учётных данных реестра. Передайте пустую строку, чтобы удалить.
--persistent-mount-pathнеобязательныйПуть монтирования постоянного тома. Передайте пустую строку, чтобы отключить.

container apps deploy

cdnctl container apps deploy --account <uuid> --app <uuid>

Публикует текущую конфигурацию как новую ревизию. После этого используйте wait, чтобы дождаться достижения развёртыванием целевого статуса.

ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения

container apps expose

cdnctl container apps expose --account <uuid> --app <uuid>

Создаёт постоянный, неизменяемый субдомен <uid>.cdn.com.tr для приложения. Субдомен никогда не меняется, даже при обновлении пользовательского домена.

ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения

container apps restart

cdnctl container apps restart --account <uuid> --app <uuid>

Выполняет плавный перезапуск всех работающих реплик без создания новой ревизии.

ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения

container apps scale

cdnctl container apps scale --account <uuid> --app <uuid> --replicas <n>

Немедленно изменяет количество реплик без создания новой ревизии. Передайте 0, чтобы масштабировать приложение до нуля.

ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения
--replicasобязательныйЦелевое количество реплик (используйте 0, чтобы приостановить приложение)

container apps show

cdnctl container apps show --account <uuid> --app <uuid>

Возвращает полную конфигурацию приложения, включая список ревизий. Используйте UUID ревизий из этого вывода с командой rollback.

ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения

container apps rollback

cdnctl container apps rollback --account <uuid> --app <uuid> --revision <revision_uuid>

Повторно развёртывает предыдущую ревизию. Используйте show, чтобы получить список доступных UUID ревизий.

ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения
--revisionобязательныйUUID ревизии, к которой выполняется откат (из show)

container apps operations

cdnctl container apps operations --account <uuid> --app <uuid>

Выводит список всех операций платформы, зафиксированных для приложения, таких как развёртывания, перезапуски и события масштабирования.

ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения

container apps status

cdnctl container apps status --account <uuid> --app <uuid>

Возвращает текущий статус выполнения и результат последней операции приложения.

ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения

container apps wait

cdnctl container apps wait \
  --account <uuid> \
  --app <uuid> \
  --status <target> \
  [--timeout <seconds>] \
  [--interval <seconds>]

Опрашивает статус приложения, пока он не достигнет значения --status или не истечёт время ожидания. Завершается с кодом 0 при успехе и 1 при ошибке или истечении времени. При ошибке автоматически включает вывод diagnose.

ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения
--statusобязательныйСтрока целевого статуса, например running
--timeoutнеобязательныйМаксимальное время ожидания в секундах. По умолчанию: 300
--intervalнеобязательныйИнтервал опроса в секундах. По умолчанию: 5

container apps logs

cdnctl container apps logs --account <uuid> --app <uuid> [--tail <n>]

Возвращает последние строки лога контейнера.

ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения
--tailнеобязательныйКоличество возвращаемых строк лога. По умолчанию: 100

container apps diagnose

cdnctl container apps diagnose --account <uuid> --app <uuid> [--tail <n>]

Возвращает объединённый снимок статуса и лога. Автоматически используется командой wait при ошибке. Запускайте эту команду в первую очередь, если приложение зависло или завершается с ошибкой.

ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения
--tailнеобязательныйКоличество включаемых строк лога. По умолчанию: 120

container apps delete

cdnctl container apps delete --account <uuid> --app <uuid> --yes

Безвозвратно удаляет приложение и все его ревизии. Эта операция необратима.

ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения
--yesобязательныйТребуется явное подтверждение для деструктивных операций

Container Preflight

Запустите preflight перед созданием приложений, чтобы убедиться, что аккаунт удовлетворяет всем требованиям платформы (квоты, сетевые политики, доступ к реестру и т. д.).

container preflight

cdnctl container preflight --account <uuid>

Проверяет готовность аккаунта к запуску контейнерных нагрузок и возвращает список обнаруженных проблем.

ФлагОписание
--accountобязательныйUUID аккаунта

Учётные данные Registry

Учётные данные реестра привязаны к аккаунту и могут использоваться повторно в разных приложениях. Пароль хранится в зашифрованном виде и после создания больше не возвращается.

container registry-credentials list

cdnctl container registry-credentials list --account <uuid>
ФлагОписание
--accountобязательныйUUID аккаунта

container registry-credentials create

cdnctl container registry-credentials create \
  --account <uuid> \
  --name <name> \
  --password <token> \
  [--registry-url <url>] \
  [--username <user>]
ФлагОписание
--accountобязательныйUUID аккаунта
--nameобязательныйПонятное имя для этих учётных данных
--passwordобязательныйПароль реестра или токен доступа
--registry-urlнеобязательныйURL реестра. По умолчанию: https://index.docker.io/v1/
--usernameнеобязательныйИмя пользователя реестра

container registry-credentials delete

cdnctl container registry-credentials delete \
  --account <uuid> \
  --credential <credential_uuid> \
  --yes

Безвозвратно удаляет учётные данные реестра. Любые приложения, ссылающиеся на эти учётные данные, не смогут загрузить образы при следующем развёртывании.

ФлагОписание
--accountобязательныйUUID аккаунта
--credentialобязательныйUUID учётных данных из registry-credentials list
--yesобязательныйТребуется явное подтверждение для деструктивных операций

Управляемые аддоны

Дополнения создаются и подключаются к приложению автоматически. Учётные данные внедряются как переменные окружения — вручную указывать хост, порт или пароль не требуется. После включения или отключения дополнения выполните deploy.

container addons list

cdnctl container addons list --account <uuid> --app <uuid>

Выводит список всех дополнений, подключённых к приложению в данный момент.

ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения

container addons enable-database

cdnctl container addons enable-database \
  --account <uuid> \
  --app <uuid> \
  [--plan <code>] \
  [--env-prefix <prefix>] \
  [--storage-mb <n>] \
  [--url-scheme <scheme>]
ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения
--planнеобязательныйКод тарифного плана. По умолчанию: starter
--env-prefixнеобязательныйПрефикс переменных окружения для внедряемых учётных данных. По умолчанию: DB
--storage-mbнеобязательныйРазмер хранилища в МБ
--url-schemeнеобязательныйСхема URL базы данных для переменной DATABASE_URL, например mysql+pymysql. По умолчанию: mysql

container addons disable-database

cdnctl container addons disable-database --account <uuid> --app <uuid>
ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения

container addons enable-redis

cdnctl container addons enable-redis \
  --account <uuid> \
  --app <uuid> \
  [--plan <code>] \
  [--env-prefix <prefix>]
ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения
--planнеобязательныйКод тарифного плана. По умолчанию: starter
--env-prefixнеобязательныйПрефикс переменных окружения. По умолчанию: REDIS

container addons disable-redis

cdnctl container addons disable-redis --account <uuid> --app <uuid>
ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения

container addons enable-postgres

cdnctl container addons enable-postgres \
  --account <uuid> \
  --app <uuid> \
  [--plan <code>] \
  [--env-prefix <prefix>] \
  [--storage-mb <n>]
ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения
--planнеобязательныйКод тарифного плана. По умолчанию: starter
--env-prefixнеобязательныйПрефикс переменных окружения для внедряемых учётных данных. По умолчанию: DATABASE
--storage-mbнеобязательныйРазмер хранилища в МБ. По умолчанию: 10240

container addons disable-postgres

cdnctl container addons disable-postgres \
  --account <uuid> \
  --app <uuid> \
  [--delete-data --confirmation <app_name>]

Отключает дополнение Postgres. По умолчанию данные сохраняются. Передайте --delete-data вместе с --confirmation, чтобы безвозвратно удалить все данные.

ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения
--delete-dataнеобязательныйБезвозвратно удалить все данные Postgres
--confirmationнеобязательныйИмя приложения для подтверждения удаления данных при указании --delete-data

container addons enable-nats

cdnctl container addons enable-nats \
  --account <uuid> \
  --app <uuid> \
  [--plan <code>] \
  [--env-prefix <prefix>] \
  [--storage-mb <n>]
ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения
--planнеобязательныйКод тарифного плана. По умолчанию: starter
--env-prefixнеобязательныйПрефикс переменных окружения для внедряемых учётных данных. По умолчанию: NATS
--storage-mbнеобязательныйРазмер хранилища JetStream в МБ. По умолчанию: 5120

container addons disable-nats

cdnctl container addons disable-nats \
  --account <uuid> \
  --app <uuid> \
  [--delete-data]

Отключает дополнение NATS. Передайте --delete-data, чтобы безвозвратно удалить все данные JetStream.

ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения
--delete-dataнеобязательныйБезвозвратно удалить все данные NATS JetStream

Compose Import

Импортируйте существующий docker-compose.yml как управляемые контейнерные приложения. Сервисы с готовым образом становятся приложениями; сервисы Redis, MySQL/MariaDB, Postgres и NATS преобразуются в управляемые дополнения, подключённые к зависящим от них приложениям. Всегда сначала запускайте preview — он показывает итоговый план, предупреждения, неподдерживаемые сервисы и укладывается ли импорт в квоту приложений, ничего при этом не создавая.

container compose preview

cdnctl container compose preview --account <uuid> --file docker-compose.yml

Разбирает файл compose на стороне сервера и возвращает план импорта: приложения, которые будут созданы, сопоставления дополнений, классификацию ключей переменных окружения/секретов, предупреждения, неподдерживаемые сервисы и проверку прав. Ничего не создаёт. Значения секретов никогда не возвращаются — только имена ключей.

ФлагОписание
--accountобязательныйUUID аккаунта
--fileобязательныйПуть к файлу compose (не более 256 КБ)

container compose apply

cdnctl container compose apply --account <uuid> --file docker-compose.yml --yes

Выполняет импорт: создаёт приложения в порядке зависимостей и включает сопоставленные дополнения. Всё или ничего — если имя какого-либо приложения конфликтует с существующим или какой-либо сервис не поддерживается (например, использует build:), ничего не создаётся. После этого разверните каждое созданное приложение командой container apps deploy.

ФлагОписание
--accountобязательныйUUID аккаунта
--fileобязательныйПуть к файлу compose (не более 256 КБ)
--yesобязательныйПодтверждает создание ресурсов
Не поддерживается в v1: сервисы с build: (вместо этого запушьте заранее собранный образ), переопределения command/entrypoint (встройте в образ), env_file, файловые compose-secrets, а также более одного постоянного монтирования на сервис. Номера портов со стороны хоста игнорируются — публичный доступ использует домен платформы и поток apps expose.

Импорты

Импорт должен завершиться до того, как развёртывание откроет публичную маршрутизацию. Используйте apps status или apps wait, чтобы отслеживать готовность после завершения импорта.

container imports list

cdnctl container imports list --account <uuid> --app <uuid>

Выводит список всех импортов и их текущий статус для приложения.

ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения

container imports database

cdnctl container imports database \
  --account <uuid> \
  --app <uuid> \
  --file <path/to/dump.sql.gz>

Загружает и ставит в очередь сжатый gzip дамп SQL для импорта в управляемую базу данных.

ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения
--fileобязательныйЛокальный путь к файлу .sql.gz

container imports files

cdnctl container imports files \
  --account <uuid> \
  --app <uuid> \
  --file <path/to/archive.tar.gz> \
  [--target-path <path>]

Загружает и распаковывает архив tar.gz в постоянный том.

ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения
--fileобязательныйЛокальный путь к архиву .tar.gz
--target-pathнеобязательныйПуть назначения внутри контейнера. По умолчанию: /app/data

container imports cancel

cdnctl container imports cancel \
  --account <uuid> \
  --app <uuid> \
  --import <import_uuid>

Отменяет импорт, находящийся в очереди или выполняющийся. Не действует, если импорт уже завершён.

ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения
--importобязательныйUUID импорта из imports list

Запланированные задачи

Задачи — это HTTP-вызовы, выполняемые по расписанию cron к эндпоинту внутри приложения. Создавайте их выключенными, проверяйте с помощью run, а затем включайте.

container jobs list

cdnctl container jobs list --account <uuid> --app <uuid>
ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения

container jobs create

cdnctl container jobs create \
  --account <uuid> \
  --app <uuid> \
  --name <name> \
  --schedule "<cron expression>" \
  --path </endpoint/path> \
  [--method <POST|GET>] \
  [--secret-header-name <header>] \
  [--secret-source <ENV_VAR>] \
  [--enabled]
ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения
--nameобязательныйИмя задачи
--scheduleобязательныйCron-выражение, например */30 * * * *
--pathобязательныйHTTP-путь для вызова, например /jobs/run
--methodнеобязательныйHTTP-метод. По умолчанию: POST
--secret-header-nameнеобязательныйИмя заголовка для передачи токена, например X-Token
--secret-sourceнеобязательныйИмя секрета приложения или переменной окружения, значение которой отправляется как значение заголовка
--enabledнеобязательныйСоздать задачу включённой. Не указывайте, чтобы создать выключенной (рекомендуется при первой настройке)

container jobs run

cdnctl container jobs run \
  --account <uuid> \
  --app <uuid> \
  --job <job_uuid> \
  [--wait] \
  [--timeout <seconds>] \
  [--interval <seconds>]

Запускает немедленное разовое выполнение задачи. Используйте --wait, чтобы дождаться завершения или ошибки выполнения.

ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения
--jobобязательныйUUID задачи из jobs list
--waitнеобязательныйБлокировать выполнение до завершения запуска
--timeoutнеобязательныйМаксимальное время ожидания в секундах при указании --wait. По умолчанию: 180
--intervalнеобязательныйИнтервал опроса в секундах. По умолчанию: 5

container jobs delete

cdnctl container jobs delete \
  --account <uuid> \
  --app <uuid> \
  --job <job_uuid> \
  --yes

Безвозвратно удаляет запланированную задачу.

ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения
--jobобязательныйUUID задачи из jobs list
--yesобязательныйТребуется явное подтверждение для деструктивных операций

Object Storage

Используйте cdnctl для управляющей плоскости: создания бакетов, ключей доступа и привязок. Для чтения и записи объектов используйте любой S3-совместимый клиент, указывающий на https://s3.cdn.com.tr. См. руководство Object Storage с AWS CLI.

object-storage buckets list

cdnctl object-storage buckets list --account <uuid>
ФлагОписание
--accountобязательныйUUID аккаунта

object-storage buckets create

cdnctl object-storage buckets create \
  --account <uuid> \
  --name <bucket-name> \
  [--visibility private|public]
ФлагОписание
--accountобязательныйUUID аккаунта
--nameобязательныйИмя бакета (глобально уникальное в рамках платформы)
--visibilityнеобязательныйprivate или public. По умолчанию: private

object-storage buckets usage

cdnctl object-storage buckets usage --account <uuid> --bucket <bucket_uuid>

Возвращает текущую статистику использования хранилища для бакета.

ФлагОписание
--accountобязательныйUUID аккаунта
--bucketобязательныйUUID бакета из buckets list

object-storage buckets delete

cdnctl object-storage buckets delete --account <uuid> --bucket <bucket_uuid> --yes

Безвозвратно удаляет бакет и все объекты внутри него. Эта операция необратима.

ФлагОписание
--accountобязательныйUUID аккаунта
--bucketобязательныйUUID бакета из buckets list
--yesобязательныйТребуется явное подтверждение для деструктивных операций

object-storage access-keys create

cdnctl object-storage access-keys create \
  --account <uuid> \
  [--bucket <uuid>] \
  [--name <name>]

Создаёт S3-совместимый ключ доступа. Поле secret_key в ответе показывается один раз и больше никогда не возвращается. Скопируйте его, прежде чем закрыть терминал.

ФлагОписание
--accountобязательныйUUID аккаунта
--bucketнеобязательныйUUID бакета, к которому привязывается ключ
--nameнеобязательныйПонятное имя для ключа

object-storage access-keys rotate

cdnctl object-storage access-keys rotate --account <uuid> --key <key_uuid>

Генерирует новый секрет для ключа доступа, сохраняя тот же UUID ключа и область действия бакета. Новый secret_key возвращается один раз и больше никогда. Обновите все клиенты перед ротацией в продакшене.

ФлагОписание
--accountобязательныйUUID аккаунта
--keyобязательныйUUID ключа доступа из access-keys create

object-storage access-keys revoke

cdnctl object-storage access-keys revoke --account <uuid> --key <key_uuid> --yes

Безвозвратно отзывает и удаляет ключ доступа. Любые клиенты, всё ещё использующие этот ключ, сразу же начнут получать ошибки аутентификации.

ФлагОписание
--accountобязательныйUUID аккаунта
--keyобязательныйUUID ключа доступа для отзыва
--yesобязательныйТребуется явное подтверждение для деструктивных операций

object-storage bindings create

cdnctl object-storage bindings create \
  --account <uuid> \
  --app <uuid> \
  --bucket <uuid> \
  [--access-key <uuid>] \
  [--env-prefix <prefix>]

Привязывает бакет к приложению. Учётные данные S3 и эндпоинт внедряются как переменные окружения при следующем развёртывании.

ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения
--bucketобязательныйUUID бакета
--access-keyнеобязательныйUUID ключа доступа для использования в привязке
--env-prefixнеобязательныйПрефикс переменных окружения. По умолчанию: S3

object-storage bindings delete

cdnctl object-storage bindings delete \
  --account <uuid> \
  --app <uuid> \
  --binding <binding_uuid> \
  --yes

Удаляет привязку бакета от приложения. Сам бакет и ключ доступа не затрагиваются; при следующем развёртывании удаляется только внедрение переменных окружения.

ФлагОписание
--accountобязательныйUUID аккаунта
--appобязательныйUUID приложения
--bindingобязательныйUUID привязки из bindings list или ответа app show
--yesобязательныйТребуется явное подтверждение для деструктивных операций