Доверие Docker: как подписать изображение, не отправляя его в хранилище

Мы запустили личный реестр докеров, и я пытаюсь использовать нотариуса для добавления подписи к изображениям. Я настроил нотариуса, и клиент Docker может подписывать изображения, когда он выдвигается в реестр.

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

Мы нажимаем на docker-registry-публикуем.example.com и вытягиваем с docker-registry.example.com
Мы не можем нажать на docker-registry.example.com

Я не могу найти способ, чтобы докер или нотариус подписали изображение, не нажимая его сначала. То, что я хотел бы иметь возможность сделать что-то вроде этого:

docker push docker-registry-publish.example.com/team1/app1:1.0
docker tag docker-registry-publish.example.com/team1/app1:1.00 docker-registry.example.com/team1/app1:1.0
$some_way_to_sign docker-registry.example.com/team1/app1:1.0

Нет команды 'docker sign', единственный способ для docker подписать изображение, насколько я знаю, это нажать. "Нотариусу" нужен файл, и я не знаю, как передать ему изображение докера.
Есть ли способ заставить либо докера, либо нотариуса просто подписать?

Спасибо!

0 ответов

Вот шаги, которые я бы сделал.

Сначала сгенерируйте ключ, используя docker trust key generate и назови это ${key}

Затем загрузите ключ и добавьте лицо, подписывающее изображение.

docker trust key load --name ${key} ${key}.pub
docker trust signer add --key ${key}.pub ${key} docker-registry-publish.example.com/team1/app1:1.0

Затем создайте образ:

docker build --disable-content-trust=true -t docker-registry-publish.example.com/team1/app1:1.0 .

А затем подпишите изображение:

docker trust sign docker-registry-publish.example.com/team1/app1:1.0

Проверяем ключи и подпись:

docker trust inspect --pretty docker-registry-publish.example.com/team1/app1:1.0

И, наконец, нажимаем:

docker push docker-registry-publish.example.com/team1/app1:1.0
Другие вопросы по тегам