Командная строка
Справочник cdnctl
Полный справочник по cdnctl (v0.12.x). Все команды выводят JSON. Токен аутентификации хранится в ~/.cdnctl/config.json или считывается из переменных окружения CDNCTL_TOKEN и CDNCTL_ENDPOINT.
delete или revoke, требует явного флага --yes. Без него команда завершается с ошибкой и не вносит никаких изменений.
Установка и обновление
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. Используется один раз на машину; токен повторно используется для последующих команд.
| Флаг | Описание | |
|---|---|---|
| обязательный | Адрес электронной почты аккаунта | |
| --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 | обязательный | Подтверждает создание ресурсов |
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 | обязательный | Требуется явное подтверждение для деструктивных операций |