• Русский
  • Распространённые операции с командами CLI

    Платформа Alauda Container Platform предоставляет инструменты командной строки для взаимодействия пользователей с реестром Alauda Container Platform. Ниже приведены примеры распространённых операций и команд:

    Предположим, что адрес сервиса реестра для кластера — registry.cluster.local, а пространство имён, с которым вы сейчас работаете — my-ns.

    Свяжитесь с технической службой, чтобы получить плагин kubectl-acp и убедитесь, что он правильно установлен в вашей среде.

    Вход в реестр

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

    kubectl acp login <ACP-endpoint>

    Добавление разрешений на пространство имён для пользователей

    Добавить пользователю разрешение на pull в пространстве имён.

    kubectl create rolebinding <binding-name> --clusterrole=system:image-puller --user=<username> -n <namespace>

    Добавить пользователю разрешение на push в пространстве имён.

    kubectl create rolebinding <binding-name> --clusterrole=system:image-pusher --user=<username> -n <namespace>

    Добавление разрешений на пространство имён для сервисного аккаунта

    Добавить сервисному аккаунту разрешение на pull в пространстве имён.

    kubectl create rolebinding <binding-name> --clusterrole=system:image-puller --serviceaccount=<namespace>:<serviceaccount-name> -n <namespace>

    Добавить сервисному аккаунту разрешение на push в пространстве имён.

    kubectl create rolebinding <binding-name> --clusterrole=system:image-pusher --serviceaccount=<namespace>:<serviceaccount-name> -n <namespace>

    Загрузка образов (Pulling Images)

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

    # Загрузить образ с именем my-app и тегом latest из реестра текущего пространства имён (my-ns)
    kubectl acp pull registry.cluster.local/my-ns/my-app:latest
    
    # Загрузить образы из других пространств имён (например, shared-ns) (требуется разрешение на pull из пространства shared-ns)
    kubectl acp pull registry.cluster.local/shared-ns/base-image:latest

    Эта команда проверяет вашу личность и разрешения на pull в целевом пространстве имён, а затем загружает образ из реестра.

    Отправка образов (Pushing Images)

    Отправляет локально собранные образы или образы, загруженные из других источников, в определённое пространство имён реестра.

    Сначала необходимо с помощью стандартного инструмента командной строки для контейнеров, например docker, присвоить локальному образу тег с адресом и форматом пространства имён целевого реестра.

    # Присвоить тег с целевым адресом:
    docker tag my-app:latest registry.cluster.local/my-ns/my-app:v1
    
    # Использовать команду kubectl для отправки в реестр текущего пространства имён (my-ns)
    kubectl acp push registry.cluster.local/my-ns/my-app:v1

    Отправляет образ из удалённого репозитория образов в определённое пространство имён реестра Alauda Container Platform.

    # Если в вашем удалённом репозитории образов есть образ remote.registry.io/demo/my-app:latest
    # Используйте команду kubectl для отправки его в пространство имён (my-ns) реестра
    kubectl acp push remote.registry.io/demo/my-app:latest registry.cluster.local/my-ns/my-app:latest

    Эта команда проверяет вашу личность и разрешения на push в пространстве имён my-ns, а затем загружает локально промаркированный образ в реестр.