Как настроить docker-нотариус-сервер, нотариуса-подписывающего лица и нотариуса-клиента для частного реестра, такого как нексус?

У меня есть нижеуказанная инфраструктура для нотариуса:

  1. нотариус
  2. нотариус
  3. база данных mariadb для «нотариального сервера» и «нотариуса, подписывающего» с использованием docker-compose.

Я хотел бы использовать свой частный реестр докеров (нексус), который развернут на другом компьютере с установленной у меня нотариальной инфраструктурой.

Не могли бы вы рассказать мне о том же пошаговом процессе?

Я расширяю свои выводы:

Я пытаюсь настроить собственную нотариальную службу, используя инструкции, доступные по этой ссылке https://github.com/theupdateframework/notary

Что я наделал:

git clone https://github.com/theupdateframework/notary.git
cd notary
3 )$ docker-compose build
$ docker-compose up -d

После выполнения вышеуказанных шагов я получил 3 контейнера, запущенных на моем хосте докеров (Запуск на локальном ноутбуке - Ubuntu16.04)

  1. notary_server
  2. нотариус
  3. mariadb: 10.1.28

Теперь, чтобы использовать мою местную нотариальную службу с частной связью реестра (размещенной как контейнер на другом компьютере), я выполнил следующие шаги:

/etc/hosts entry
127.0.0.1 notary-server
mkdir -p ~/.notary && cp cmd/notary/config.json cmd/notary/root-ca.crt ~/.notary

После этого я проверил соединение, используя команду ниже, и это получилось.

openssl s_client -connect :4443 -CAfile fixtures/root-ca.crt -no_ssl3 -no_ssl2

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

DOCKER_CONTENT_TRUST_SERVER=https://notary-server:4443
DOCKER_CONTENT_TRUST=1

Проблема: когда я запускаю команду docker push, как показано ниже

sudo docker push nexus.xyz.com:5000/nginx:latest (раньше я делал правильный тег)

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

Но когда я использую

sudo docker push --disable-content-trust=false nexus.xyz.com:5000/nginx:latest

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

notary list nexus.xyz.com:5000/nginx:latest

Вопрос: Нужно ли мне делать какие-либо другие настройки, чтобы пользоваться собственными нотариальными услугами?

Любая помощь могла бы быть полезна.


person chinmay    schedule 15.01.2018    source источник


Ответы (2)


sudo docker push --disable-content-trust=false nexus.xyz.com:5000/nginx:latest

запускается от имени пользователя root, поэтому домашняя страница меняется.

Вы должны попытаться скопировать .docker и .notary в домашний каталог корневого каталога. Или добавьте текущего пользователя в группу docker и запустите команду docker без sudo.

person Peng Wu    schedule 13.10.2018

Я смог заставить это работать, как вы описали. Хотя, толкаясь, я сделал:

docker push localhost: 5000 / uname / nginx: последний

* отмечая, что у меня есть собственный частный реестр, работающий локально

Кроме того, это избавляет вас от необходимости редактировать / etc / hosts:

notary -s https://localhost:4443 список localhost: 5000 / gt3389b / myfirstimage

person gt3389b    schedule 15.09.2018
comment
Добавить еще описание - person Mathews Sunny; 15.09.2018