Docker SDK для удаленного хранилища - PullRequest
0 голосов
/ 19 февраля 2020

Мне нужен доступ к личному реестру docker с помощью Go SDK. Я нашел "пакет реестра". Я вижу, что у него есть объект "DefaultSession". Я могу подключиться к частному реестру, но не могу исследовать его с помощью DefaultSession. Во-вторых, пакет реестра содержит структуру Session. Они написали, что это только для протокола v1. Хорошо, я подключаю частный репозиторий, используя Session:

    c := http.Client{}
    indexInfo, err := registry.ParseSearchIndexInfo("repo")
    if err != nil {
        log.Error(err)
        return
    }
    endpoint, err := registry.NewV1Endpoint(indexInfo, "", nil)
    if err != nil {
        log.Error(err)
        return
    }
    session, err := registry.NewSession(&c, &authConfig, endpoint)
    if err != nil {
        log.Error(err)
        return
    }

    n, err := reference.ParseNamed("docker.io/repo/image")
    if err != nil {
        log.Error(err)
        return
    }

    rep, err := session.GetRepositoryData(n)
    if err != nil {
        log.Error(err)
        return
    }

Но GetRepositoryData возвращает ноль изображений, но они находятся в репозитории. Почему? Это правильный способ доступа к удаленному хранилищу? Есть ли v2 SDK для Go?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...